双指针算法
部分转载自代码随想录
思路:
一个快指针,一个慢指针。使用一层for循环解决两层for循环做的事情。
快指针
:寻找新数组所需要的元素
慢指针
:获取新数组中需要更新的位置,新数组下标值就是慢指针,需要更新的下标值就是慢指针。
例题:27. 移除元素 - 力扣(LeetCode)
slow = 0;
for(fast = 0; fast < nums.size; fast++){
if(nums[fast] != val){
nums[slow] = nums[fast];
slow++;
}
}
return slow;
相关题目推荐
length,length(),size()区别
首先区分一下length和length();
length不是方法,是属性,数组的属性;
public static void main(String[] args) {
int[] intArray = {1,2,3};
System.out.println("这个数组的长度为:" + intArray.length);
}
length()是字符串String的一个方法;
public static void main(String[] args) {
String str = "HelloWorld";
System.out.println("这个字符串的长度为:" + str.length());
}
size()方法,是List集合的一个方法;
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
System.out.println("这个list的长度为:" + list.size());
}
总结:
length——数组的属性;
length()——String的方法;
t.size());
}
总结:
**length——数组的属性;**
**length()——String的方法;**
**size()——集合的方法;**