`

1.4插入排序

 
阅读更多
package array;
/**
 * * 插入排序
 * @author 杨伦亮
 * 1:14:56 AM
 */
public class InsertSort {
	private long[] a;
	private int nElement;
	long time=0;
	/**
	 * 构造函数
	 * 
	 * @param size
	 */
	public InsertSort(int size) {
		a = new long[size];
		nElement=size;
	}
	/**
	 * 更新某个坐标的值
	 * 
	 * @param point
	 * @param value
	 */
	public void setElem(int point, long value) {
		a[point] = value;
	}
	/**
	 * 获得指定坐标值
	 * @param index
	 * @return long
	 */
	public long getElem(int index){
		return a[index];
	}
	/**显示*/
	public void display(){
		for (int i = 0; i<a.length; i++) {
			System.out.print(a[i]+" ");
		}
		System.out.println();
	}
	public  void  displayRunTime() {
		System.out.println("Run Time:"+time);
	}
	/**插入排序*/
	public void insertSort(){
		int in,point;
		for (point=1;point<nElement;point++) {
			in=point;
			long temp=a[point];
			while(in>0&&a[in-1]>=temp){
				a[in]=a[in-1];
				in--;
				time++;
			}
			a[in]=temp;
		}
	}
}

 

分享到:
评论

相关推荐

    选择排序和插入排序c#源码

    根据给定的文件标题、描述、标签以及部分内容,本文将详细介绍选择排序与插入排序这两种算法在C#中的实现原理及代码细节。 ### 一、选择排序 #### 1.1 算法原理 选择排序是一种简单直观的比较排序算法。它的工作...

    综合排序 数据结构(C语言)

    本课程设计聚焦于“综合排序数据结构(C语言)”,旨在通过实践加深对不同排序算法的理解和掌握,包括但不限于插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序和归并排序。 ### 一、概要设计 #### 1.1 ...

    数据结构实验1.4:带表头结点单链表的非递减排序.doc

    实验中提到的非递减排序可以采用多种算法实现,如冒泡排序、插入排序、选择排序等。这里选择的是简单选择排序,该算法的工作原理是每次从未排序的部分选取最小(或最大)的元素放到已排序部分的末尾,直到所有元素...

    几种常见排序算法实现

    几种常见排序 基于比较的排序算法: 下界是 nlgn 1.1 SelectionSort:每次选出最下的元素,放在当前循环最左边的位置。 1.2 BubbleSort:每次比较相邻的两个...对桶内的数据采用插入排序;再把各个桶的排序结果串起来。

    算法:算法C语言实现 第1-4部分 基础知识、数据结构、排序及搜索

    第三部分“排序”(第6~11章)按章节顺序分别讨论基本排序方法(如选择排序、插入排序、冒泡排序、希尔排序等)、快速排序方法、归并和归并排序方法、优先队列与堆排序方法、基数排序方法以及特殊用途的排序方法,...

    pdf文件编辑器 v1.4注册版

    2. **图像处理**:软件可能允许用户插入、替换或删除PDF文件中的图片,支持常见的图像格式,并能调整图像的大小、位置和透明度。 3. **页面管理**:用户可以添加、删除或重新排序PDF文档的页面,以满足不同的布局...

    tokyocabinet-1.4.48.tar.gz

    标题中的"tokyocabinet-1.4.48.tar.gz"表示的是Tokyo Cabinet的1.4.48版本的源码压缩包,它采用tar.gz格式进行打包,这是一种在Linux和类Unix系统中常见的文件归档和压缩方式。 Tokyo Cabinet提供了两种主要的数据...

    DYHB-blog v1.4 正式版.rar

    16:幻灯片:提供幻灯片 17:预置广告位:轻松在自己的系统插入广告 18:灵活的widgets:程序最大支持4组widget,widgets支持排序,自定义名字,是否隐藏等等 19:自定义url衔接,伪静态:程序提供和wordpress一样...

    jQuery-EasyUI-1.4完整

    3. **数据绑定**:与jQuery有所不同,EasyUI的组件如datagrid可以直接与服务器端的数据源进行绑定,实现数据的自动加载、排序、分页等功能。 4. **易用性**:通过简单的属性配置,开发者可以调整组件的行为和外观,...

    jgl_src_1.4.rar_java 集合

    在这个名为"jgl_src_1.4.rar"的压缩包中,我们找到了与Java集合相关的源代码,这对于深入理解集合的工作原理以及自定义数据结构来说是非常宝贵的资源。 首先,让我们了解一下Java集合框架的基础。在Java中,集合...

    P10_1652677_吴桐欣_说明文档1

    该项目的主要目标是实现8种经典的排序算法,包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序、希尔排序和基数排序。通过对比这些算法的时间复杂度、空间复杂度以及实际运行效率,为软件工程师在实际...

    ueditor-1.4.3.3 utf8-net

    6. **表格操作**:强大的表格创建和编辑工具,包括合并单元格、拆分单元格、排序等功能。 7. **自定义工具栏**:允许开发者根据项目需求自定义编辑器的工具栏,展示最常用的功能。 8. **HTML5兼容**:ueditor-1.4....

    python数据结构与算法,python入门、竞赛必备

    数据结构与算法目录为 数据结构与算法(Python) ...6.3. 插入排序 6.4. 快速排序 6.5. 希尔排序 6.6. 归并排序 6.7. 常见排序算法效率比较 6.8. 搜索 7. 树与树算法 7.1. 二叉树 7.2. 二叉树的遍历

    程序员考试同步辅导(下午科目)常用算法和数据结构

    以上介绍了几种常见的排序算法,包括选择排序、直接插入排序、希尔排序和冒泡排序。这些算法各有优缺点,在实际应用中可以根据具体情况选择合适的算法。例如,如果数据量不大且需要保证稳定性,可以选择直接插入排序...

    Java集合排序及java集合类详解.pdf

    ##### 1.4 Map - **概述**:Map是一种存储键值对的容器,其中键不允许重复,而值可以重复。 - **常用方法**: - `put(K key, V value)`:将指定的键值对放入映射中。 - `get(Object key)`:返回指定键对应的值。 ...

    JQuery_1.4_API及jQuery常用插件大全

    2. **jQuery UI**: 提供了各种用户界面组件,如拖放、对话框、日历、排序等。 3. **jQuery Validate**: 强大的表单验证插件,可自定义验证规则。 4. **HoverIntent**: 高级悬停事件处理,避免鼠标快速移动时的误触发...

    ueditor-dev-1.4.3.3.zip

    2. 图片处理:内置图片上传功能,支持图片裁剪、预览和拖拽排序,同时提供图片服务器端处理接口。 3. 视频插入:允许插入在线视频链接,也支持本地视频上传并转换为在线播放。 4. 表格操作:创建、编辑和格式化表格...

    Java集合排序及java集合类详解

    - **数据结构**:是否需要保持元素的插入顺序或者排序顺序。 - **数据类型**:是否需要存储键值对或者是简单的元素集合。 ##### 1.1.2 容器的分类 - **Collection**:这是一个接口,它是最基本的容器,提供了添加...

    algorithm.docx

    直接插入排序是一种简单的排序方法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 **2.2 算法步骤** - 将第一个元素看作是一个有序的子序列。 - 从第二个...

Global site tag (gtag.js) - Google Analytics