插入排序
来源:互联网 发布:大数据分析师培训学费 编辑:程序博客网 时间:2024/06/01 07:21
插入排序作为冒泡排序的一种改进,主要思路是寻找插入点,插入元素。以下为java代码
package SortAlgorithm;import java.util.List;/** * Created by chenmeiji on 2016/12/4. */public class InsertSortAlgorithm { //升序 public void AscAlogrithm(List<Integer> list){ int length=list.size(); for (int i=1;i<=length-1;i++) { int j=i-1; //待插入元素 int a=list.get(i); //寻找插入点 while (j>=0&&a<list.get(j)){ reverse(list,j+1,j); j--; } } } //降序 public void DscAlogrithm(List<Integer> list){ int length=list.size(); for (int i=1;i<=length-1;i++) { int j=i-1; //待插入元素 int a=list.get(i); //寻找插入点 while (j>=0&&a>list.get(j)){ reverse(list,j+1,j); j--; } } } /** * 对数组中a,b位置的元素进行交换 * @param l * @param a * @param b */ public void reverse(List<Integer> l,int a,int b){ if(a<0||b<0||a>l.size()-1||b>l.size()-1) try { throw new Exception("传入的参数有误"); } catch (Exception e) { e.printStackTrace(); return; } int temp=0; temp=l.get(a); l.set(a,l.get(b)); l.set(b,temp); }}
0 0
- 插入排序-【插入排序】
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 分词工具关键词提取对比
- javascript学习第一章:基础知识的学习
- 观察者模式
- 设计模式之策略模式
- JM8.6 ImageParameter结构体中ipremode变量 详解
- 插入排序
- 物联网战略的成败在于开放性
- char encode——ASCII
- android:genymotion连接本地服务器
- 编程之法(字符串的包含)
- fluent 接口(链式调用的接口)
- 简谈数据类型
- Java之JDK和JRE
- 针对crackme-F1F2.apk的破解思路