首页 > 编程知识 正文

java面试笔试题字符串,o1删除链表节点 面试题

时间:2023-05-03 05:04:29 阅读:27387 作者:1270

面试时遇到问题,如何写数组加重。

方法1可以创建空的List,遍历数组,将数组中的值依次传递给List,然后使用List的contains ) )方法。 如果List包含当前正在遍历的数组元素,则不添加到List中,以确保其唯一性。 List的toArray ) )方法将集合转换为数组。

publicstaticvoidduplicateremovalbylist (字符串[ ] arrstr ) liststringlist=newarrayliststring ); for(intI=0; iarrStr.length; I ) if (! list.contains(Arrstr[I] ) list.add (arrstr [ I ] ); } string [ ] new arrstr=list.to array (new string [1]; system.out.println (arrays.tostring ) newArrstr ); }方法2使用Map的keyset(.toarray )方法将集合转换为数组,该方法利用Map集合键的不可重复性遍历数组,将每个数组元素传递给Map集合,从而获得顺序混乱的Map集合而不重复。

publicstaticvoidduplicateremovalbymap (字符串[ ] arrstr ) { MapString,Object map=new HashMapString,Object ); for(stringstr:arrstr ) map.put ) str,str ); } String[] newArrStr=map.keySet ().toArray ) newString(1); system.out.println (arrays.tostring ) newArrstr ); )方法3使用数组权重,首先创建与原始数组a长度相同的新数组b,但不首先传递值(那么B={ null、null、null、null } ); 建立一个flag遍历a,依次取a的各值与b的所有值进行比较,如果值相等,则flag为false,比较a的一个值与b的所有值后,如果flag仍为true,则将a的当前值传递给b,false 在遍历a之后,得到等长度且没有重复的b (末尾可能有多个空值),得到末尾的非空的索引值index; 创建长度为index的新数组c,遍历b数组,仅在索引为index时获取,然后传递给c。

publicstaticvoidduplicateremovalbyarr () integer [ ] arr={ 1,1,2,3 }; integer [ ] tmp=new integer [ arr.length ]; int m=0; for(intI=0; i arr.length; I )//tmp数组中是否存在布尔标志=true的for(intn=0; n tmp.length; n () if ) tmp[n]==arr[I] ) /如果有相等的,则flaseflag=false; }if(flag ) {tmp[m ]=arr[i]; }}//list为Integer[] newArr=new Integer[m]; 检测//数组中有多少个为null,代入新的数组for (intk=0; 千米; k({newarr[k]=tmp[k]; }tmp=newArr; 系统. out.println (arrays.tostring (tmp ) ); }方法实例化四个Set集合,遍历数组并将其存储在集合中,如果元素已经存在则不重复存储,最后返回Set集合的数组形式。

公共静态对象[ ] duplicateremovalbyset (object [ ] arr ) ) { Set set=new HashSet; for(intI=0; i arr.length; I ) set.add(arr[I]; } return set.toArray (; )方法在五链表中取重量,遍历数组,传递给链接的散列,创建得到无重复元素集合的迭代器、迭代集合。

publicstaticvoidduplicateremovalbylink (object [ ] arr ) linkedhashsetobjectlink=newlinkedhashsetobject ); for(intI=0; i arr.length; I ) (link.add ) arr[I]; } iteratorobjectiterator=link.iterator (; 系统. out.println (link; /**while(iterator.hasnext (() system.out.print (iterator.next ) )、(() )、() )、() ) ) ) )

鸢飞上天,历经尼龙的世界事务

2019年7月30日

转载于:https://my.oschina.net/u/4132908/blog/3081012

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。