一、插入排序:
/** * 思路:在没有排好序的数据中从左至右依次选择一个数据 * 与排好序的数据从右至左进行比较,如果排好序的数据大 * 于待排序的数据,排好序的数据依次后移 * @param arr */ public static void insertSort(int[] arr) { for (int i = 0,len = arr.length; i < len - 1; i++) { int j = i; int temp = arr[j + 1]; while (j > -1 && arr[j] > temp) { arr[j + 1] = arr[j]; j --; } arr[j + 1] = temp; } }
二、选择排序:
/** * 思路:从未排好序的数据中选择一个最小,与当前数据进行交换 * @param arr */ public static void selectSort(int[] arr) { for (int i = 0 ,len = arr.length;i < len -1 ;i ++) { int temp = arr[i]; int k = i; for (int j = i + 1; j < len; j++) { if (temp > arr[j]) { temp = arr[j]; k = j; } } if (k != i) { temp = arr[i]; arr[i] = arr[k]; arr[k] = temp; } } }
三、冒泡排序:
/** * 进行n-1次循环,数据最未端是排好序的 * @param arr */ public static void bubbleSort(int[] arr) { for (int i = 0,len = arr.length; i < len - 1 ; i++) { for (int j = 0; j < len - i - 1; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } }
数据的输出共用方法:
public static void showArr(int[] arr) { for (int i : arr) { System.out.print(i); System.out.print('\t'); } System.out.println(); }
测试方法:
public static void main(String[] args) { int[] arr = {9,8,10,7,5,6,3,2,4,-1}; showArr(arr); insertSort(arr); showArr(arr); }
相关推荐
直接插入、折半插入、冒泡、快速、简单选择等排序方法 用c语言实现 代码运行正常 不会有任何的问题
本文实例讲述了Python实现的插入排序,冒泡排序,快速排序,选择排序算法。分享给大家供大家参考,具体如下: #!/usr/bin/python # coding:utf-8 #直接插入排序 def insert_sort(list): for i in range(len(list))...
java可运行排序算法:①插入排序、②冒泡排序、③选择排序、④学生学号按照成绩高低排序的一个简单实例。在java工程项目的源文件src中建立Array包,可运行这四个.java文件,便于对java中的排序算法及数组结构进一步...
java 代码实例 冒泡排序 直接插入排序 数组中插入数据
C语言排序实例(选择、冒泡、插入、折半、快速),相关教程链接如下: http://blog.csdn.net/tennysonsky/article/details/48209813
经典C语言排序算法,其中包括三种典型号的排序算法,冒泡排序,选择排序,插入法排序,并有实例.
本文实例讲述了JS排序算法之冒泡排序,选择排序与插入排序。分享给大家供大家参考,具体如下: 冒泡排序: 对数组的中的数据,依次比较相邻两数的大小。 如果前面的数据大于后面的数据,就交换这两个数。 时间...
29. 排序综合(限1 人完成) 利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。 要求: ...PS:采用了直接选择排序算法、冒泡排序、希尔排序、直接插入排序这四种排序算法。
1、 掌握直接插入排序、折半插入排序、冒泡排序、快速排序和归并排序等排序算 法的思想。 2、 实现直接插入排序、折半插入排序、冒泡排序、快速排序和归并排序等排序算 法的编程应用。 二、 问题描述 实现数据的折半...
本文实例讲述了Go语言实现冒泡排序、选择排序、快速排序及插入排序的方法。分享给大家供大家参考。具体分析如下: 算法是程序的灵魂,而排序算法则是一种最基本的算法。排序算法有许多种,这里介绍4中排序算法:冒泡...
主要介绍了C语言排序方法,包含10种排序,数据结构课程设计实例二叉树建立遍历冒泡排序快速排序_二叉排序树_二叉树层次遍历_二叉树非递归遍历_二叉树建立括号匹配直接插入选择代码大学生本科毕业设计期末作业排序...
面试必考题目 各种排序实例及点评 包括直接插入排序、shell排序、选择排序、冒泡排序、快速排序、归并排序
C语言10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 查找 二叉排序树 二叉树层次遍历 二叉树非递归遍历 二叉树建立 快速排序 括号匹配 冒泡排序 直接插入排序 直接选择排序
里简单介绍了下Python中冒泡,选择,插入排序的使用方法,推荐给需要的小伙伴们参考下。
本文所述的Python实现冒泡,插入,选择排序简单实例比较适合Python初学者从基础开始学习数据结构和算法,示例简单易懂,具体代码如下: # -*- coding: cp936 -*- #python插入排序 def insertSort(a): for i in ...
实例009——实现排序操作 实例009——冒泡排序操作 实例009——快速排序操作 实例009——插入排序操作 实例009——选择排序操作
实现合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序算法 随机产生空间大小为: N = 10, 1000,10000,100000 的排序样本,取值为[0,1]区间 输出: 1) N=10时,排序结果。 2) N=1000,10000,...
c语言 直接选择排序.c 直接插入排序.c 冒泡排序.c 括号匹配.c 快速排序.c 二叉树建立.c 二叉树非递归遍历.c 二叉树层次遍历.c 二叉排序树.c ...10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.txt