首页 / 算法 / java实现常见排序算法
java实现常见排序算法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java实现常见排序算法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1671字,纯文字阅读大概需要3分钟。
内容图文
![java实现常见排序算法](/upload/InfoBanner/zyjiaocheng/591/bfcab307442844a5b785eb9050713252.jpg)
//快速排序 public static void Quick(int[] nums, int start, int end){ if(start > end){ return; } int i = start,j = end; int e = nums[i]; while (i < j){ while(i < j && nums[j] > e){ j--; } nums[i] = nums[j]; while(i < j && nums[i] < e){ i++; } nums[j] = nums[i]; } nums[i] = e; Quick(nums,start,i - 1); Quick(nums, i + 1, end); } //归并排序 public static void MergeSort(int[] nums, int start, int end){ if(start >= end){ return; } //divide int mid = (start + end) / 2; MergeSort(nums, start, mid); MergeSort(nums, mid + 1, end); //conquer Merge(nums, start, mid, end); } public static void Merge(int[] nums, int start, int mid, int end){ int i = start; int j = mid + 1; int[] temp = new int[end - start + 1]; int p = 0; //指向temp数组的待插入位置 while (i <= mid && j <= end){ if(nums[i] <= nums[j]){ temp[p] = nums[i]; i++; p++; }else{ temp[p] = nums[j]; j++; p++; } } while(i <= mid){ temp[p] = nums[i]; i++; p++; } while(j <= end){ temp[p] = nums[j]; j++; p++; } for (int k = start, l = 0; k <= end; k++,l++) { nums[k] = temp[l]; } } //直接插入排序 public static void InsertionSort(int[] nums){ int len = nums.length; for (int i = 0; i < len; i++) { for (int j = i; j > 0; j--) { if(nums[j] < nums[j - 1]){ int temp = nums[j]; nums[j] = nums[j -1]; nums[j - 1] = temp; } } } } //冒泡排序 public static void BubbleSort(int[] nums){ int len = nums.length; for (int i = len - 1; i > 0; i--) { for (int j = 0; j < i ; j++) { if(nums[j] > nums[j + 1]){ int temp = nums[j]; nums[j] = nums[j + 1]; nums[j + 1] = temp; } } } } //简单选择 public static void SelectionSort(int[] nums){ int len = nums.length; for (int i = 0; i < len - 1; i++) { int p = i; for (int j = i; j < len; j++) { if(nums[j] < nums[p]){ p = j; } } int temp = nums[i]; nums[i] = nums[p]; nums[p] = temp; } }
内容总结
以上是互联网集市为您收集整理的java实现常见排序算法全部内容,希望文章能够帮你解决java实现常见排序算法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。