首页 > 代码库 > 编写SearchInsertPosition类,实现查找和插入功能
编写SearchInsertPosition类,实现查找和插入功能
1 public class SearchInsertPosition { 2 /* 3 * 思路如下: 4 * 1.先循环查找在数组中有没有一个数刚好等于目标数 5 * 2.如果查找到了就直接返回数组下标 6 * 3.如果查找不到的话,就再建立一个循环,查询目标数应该插入哪个位置合适 7 * 如果目标数比数组的第一个数还小的话,就插入在最前面也就是数组下标为零的位置 8 * 如果目标是比数组的最后一个数还大的话,就插入在最后面也就是数组下标为len的位置 9 * 还有一种情况就是在两个数之间,要比较才能确定,10 * 比较的条件为,应该比前面的数大,比后面的数小,插入的位置,就为后面的数的下标11 * 12 * 13 * 14 * */15 public int searchInsert(int A[],int target)16 {17 int len=A.length;18 boolean check=false;19 for(int i=0;i<len;i++)20 {21 if(target==A[i])22 {23 check=true;24 return i;25 } 26 27 }28 if(!check)29 {30 for(int j=0;j<len;j++)31 {32 if(target<=A[0])33 {34 35 return 0;36 37 }38 else if(target>=A[len-1])39 {40 return len;41 }42 else if(target<=A[j]&&target>=A[j-1])43 return j;44 45 }46 }47 48 return 0;49 50 }51 52 public static void main(String[] args) {53 // TODO Auto-generated method stub54 int A[]={1,3,5,6};55 SearchInsertPosition sip = new SearchInsertPosition();56 int num = sip.searchInsert(A, 4);57 System.out.println(num);58 }59 60 }
编写SearchInsertPosition类,实现查找和插入功能
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。