【LeetCode】简单算法模板(JAVA实现)


背景

总结部分简单算法的JAVA样例模板

一、冒泡排序(BubbleSort)

 1     //冒泡排序
 2     public int[] BubbleSort(int[] nums){
 3         int temp = 0;
 4         for(int i=0;i<nums.length-1;i++){
 5             //如果数组中没有重复元素,可声明j=i,节省少量运算次数
 6             for(int j=0;j<nums.length-1;j++){
 7                 if(nums[j]>nums[j+1]){
 8                     temp = nums[j+1];
 9                     nums[j+1] = nums[j];
10                     nums[j] = temp;
11                 }
12             }
13         }
14         return  nums;
15     }

二、二分查找(BinarySearch)

 1    //二分查找
 2     //前提条件:nums为有序数组,且应该是从小到大的顺序(从大到小也可以,不过判断逻辑相反)
 3     public int BinarySearch(int input,int[] nums){
 4         int res = -1;
 5         int left = 0;
 6         int right = nums.length-1;
 7         int mid = (left+right)/2;
 8         for(int i=0;i<nums.length;i++){
 9             if(input == nums[mid]) {
10                 return mid;
11             }else if(input<nums[mid]) {
12                 right = mid-1;
13             }else{
14                 left = mid+1;
15             }
16             if(right<left){
17                 break;
18             }
19             mid = (left+right)/2;
20         }
21         return res;
22     }

 

……未完待续

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM