力扣
704.二分查找
给定一个n个元素的有序的(升序)整型数组nums和一个目的值target,写一个函数搜索nums中的target,假如目的值存在返回小标,否则返回-1。
思路:二分查找法,界说左右边界[left,right);不停取中值缩小查找范围。- class Solution{
- public int search(int[] nums,int target){
- int left=0;
- int right=nums;
- while(right>=left){
- int mid=(left+right)/2;
- if(nums[mid]>target){
- right=mid-1;
- }else if{
- left=mid+1;
- }else{
- return mid;
- }
- }
- return -1;
- }
- }
复制代码 27.移除元素
给你一个数组 nums和一个值 val,你必要原地移除全部数值等于val的元素。元素的顺序可能发生改变。然后返回nums中与val不同的元素的数量。
思路:界说两个指针用来对数组使用,当fast指针指向的元素不等于val时;更新slow指针
[code] class Solution{ public int removeElement(int[] nums,int val){ int slow=0; for(int fast=0;fast |