int数组里的元素查重问题
来源:互联网 发布:注册淘宝账号 编辑:程序博客网 时间:2024/06/05 02:50
今天,接到了个需求,判断一个整数数组中是否存在相同的整数。当时第一反应,是用两个for循环嵌套来实现这个需求,但是感觉有点普通,就突然想到,可以用索引来解决这个需求。 大致思路就是,判断这个元素在这个数组中第一次出现的位置和最后一次出现的位置是否一致,如果不一致,那么就是表明这个数组有不止一个这个元素,就可以返回false了。 那么,整数数组中没有indexOf方法,不太好弄,那谁有?String有这个方法,那就把整数数组转换成字符串,再来操作。但是还有一个问题就是,查询的时候会把子串也给找出来,就是你想找1,但是他可能把31的索引找到了。这就是比较坑的了,所以你需要判断你找到的这个左右是不是数字,如果不是数字,说明匹配到的是我想要的,而不是一个整数的一部分。 下面上代码:
public static boolean isRepeat(int[] arr){ String str = Arrays.toString(arr); System.out.println(str); for(int i=0;i<arr.length;i++){ String s = arr[i]+""; if(!Character.isDigit(str.charAt(str.indexOf(s)-1))&& !Character.isDigit(str.charAt(str.indexOf(s)+1))&& !Character.isDigit(str.charAt(str.lastIndexOf(s)+1))&& !Character.isDigit(str.charAt(str.lastIndexOf(s)-1))&& str.indexOf(s)!=str.lastIndexOf(s)){ return true; } } return false; }
加油! ——Lucifer 2017/7/28
阅读全文
0 0
- int数组里的元素查重问题
- 数组首元素地址和数组地址、int *ptr=(int *)(&a+1)问题的探讨
- js删除数组里的某个元素
- js删除数组里的某个元素
- js删除数组里的某个元素
- JavaScript删除数组里的某个元素
- js 去除数组里的某一元素
- JS删除数组里的某个元素
- js删除数组里的某个元素
- 查找数组里的指定元素
- 删除数组里的指定元素
- Javascript 数组查重
- 数组查重
- 数组查重(C++)
- javascript数组查重
- js数组查重
- 数组元素去重
- 数组元素去重
- 古文觀止卷七_原毁_韓愈
- 解决excel导出大数字溢出或者被科学计数法格式化
- cartographer源码分析(29)-io-min_max_range_filtering_points_processor.h
- Lucas–Kanade光流算法
- C++Windows下CONTAINING_RECORD宏的用法和详解
- int数组里的元素查重问题
- Vue项目启动问题
- cartographer源码分析(30)-io-counting_points_processor.h
- cartographer源码分析(31)-io-xray_points_processor.h
- JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解
- 系统日志
- cartographer源码分析(32)-io-intensity_to_color_points_processor.h
- hbase源码编译、配置安装、测试
- cartographer源码分析(33)-io-ply_writing_points_processor.h