leetcode-448 Find All Numbers Disappeared in an Array
来源:互联网 发布:海岛大亨4 mac 汉化 编辑:程序博客网 时间:2024/05/27 20:52
中文描述
数组arr,长度为n,0<arr[i]<n,找出1~n中没有在数组中出现的数字,找出数组中没有出现的数据,时间复杂度为o(n),尽量不要浪费空间。
说明
从0<arr[i]<n,并且是数组,并且不要浪费空间,因此只能在原数组的基础上进行判断,而进行判断,需要明确:如何确定哪个数字出现了?如何确定是否出现? 1 通过数组的下标,确定数字,2 通过+,-号确定该数字是否出现。遍历数组,元素值的绝对值减一作为下标,该下标对应的值改为负值。遍历数组,元素值为整数的,说明改下标加一的数字没有出现。
java代码
public static List<Integer> findAllNumbersDisapperaredInAnArray(Integer[] nums){ List<Integer> list = new ArrayList<Integer>(); printArr(nums); for(Integer n : nums){ nums[Math.abs(n)-1] = -Math.abs(nums[Math.abs(n)-1]); printArr(nums); } for(int i=0;i<nums.length; i++){ if(nums[i] > 0){ list.add(i+1); } } return list; }
先临时记录自己的方法,刷完easy题之后再去看别人的方法,如果有更好的方法,会做补充,如果你有的话请留言,谢谢啦
0 0
- leetcode 448Find All Numbers Disappeared in an Array (array)
- LeetCode No.448 Find All Numbers Disappeared in an Array
- leetcode-448 Find All Numbers Disappeared in an Array
- 【LeetCode-448】 Find All Numbers Disappeared in an Array(C++)
- leetcode 448 Find All Numbers Disappeared in an Array C++
- Leetcode 448 Find All Numbers Disappeared in an Array
- leetcode-448- Find All Numbers Disappeared in an Array
- [LeetCode]448 Find All Numbers Disappeared in an Array
- leetcode 448 Find All Numbers Disappeared in an Array
- LeetCode 448 --- Find All Numbers Disappeared in an Array
- Leetcode #448 Find All Numbers Disappeared in an Array
- LeetCode 448 Find All Numbers Disappeared in an Array
- leetcode-448-Find All Numbers Disappeared in an Array
- [leetcode 448]Find All Numbers Disappeared in an Array
- leetcode-448 Find All Numbers Disappeared in an Array
- Leetcode 448 Find All Numbers Disappeared in an Array
- Leetcode 448 Find All Numbers Disappeared in an Array
- LeetCode 448 Find All Numbers Disappeared in an Array
- 关于下载并安装Vs2008
- The Factory pattern
- Iframe用法的详细讲解(属性、透明、自适应高度)和html中滚动条属性设置
- iOS网络缓存扫盲篇
- 灵活而奇特的C++语言特性——const(三)
- leetcode-448 Find All Numbers Disappeared in an Array
- 粗略列出并理解Java中的IO
- Swing
- Android中的原型模式
- 编程实现atoi函数
- TensorFlow在Windows10中的安装
- 【解题报告】Codeforces Round #340 (Div. 2)
- The Template method pattern
- #define与typedef的区别