首页 > 代码库 > 从数组里挑出仅仅出现一次的对象
从数组里挑出仅仅出现一次的对象
去某公司面试~
技术问的问题是给一个数组,挑出里面仅仅出现一次的数字。
下面是我给出的方法,算不上正规的算法。也没考虑什么控件复杂度。
假设你是大牛,请在回复里写一下 你的算法。欢迎互动
public static void main(String[] args) { int array[]={1,3,5,7,9,1,3,5,7}; int length=array.length; StringBuilder sb= new StringBuilder(); for(int i=0;i<length;i++){ sb.append(array[i]); } for(int i=0;i<length;i++){ int firstPosition=sb.indexOf(array[i]+""); int endPosition=sb.lastIndexOf(array[i]+""); if(firstPosition==endPosition) System.out.println("出现一次的是:"+array[i]); } }
针对1楼提出的bug
我做出例如以下改动,
<span style="font-size:18px;color:#000000;">public void find(){ int array[]={11,13,55,77,99,21,13,55,77}; int length=array.length; StringBuilder sb= new StringBuilder(); for(int i=0;i<length;i++){ sb.append(array[i]+"s"); } for(int i=0;i<length;i++){ int firstPosition=sb.indexOf(array[i]+"s"); int endPosition=sb.lastIndexOf(array[i]+"s"); if(firstPosition==endPosition) System.out.println("出现一次的是:"+array[i]); else System.out.println("出现多次的是:"+array[i]); } }</span>
从数组里挑出仅仅出现一次的对象
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。