`
1202
  • 浏览: 2137 次
  • 性别: Icon_minigender_1
  • 来自: 天津
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

算法备忘录----插入排序

阅读更多
public class InsertSort {
	
	public static void main(String[] args) {
		int[] old = {1,3,3,67,214234,34,9,34314,56,1};
		sort(old);
		print(old);

	}

	public static void sort(int[] a){
		for(int i=1;i<a.length;i++){
			int temp = a[i];
			int inner = i;
			while(temp<a[inner-1] && inner>0){
				a[inner] = a[inner-1];
				inner--;
			}
			a[inner] = temp;
		}
	}
	
	public static void print(int[] a){
		for(int i=0;i<a.length;i++){
			System.out.print(a[i]+" ");
		}
	}
}
分享到:
评论

相关推荐

    1000多种java算法大全源码包

    - **斐波那契数列**:如使用备忘录或迭代法解决。 - **最短路径问题**:如Dijkstra算法的动态规划改进版。 6. **贪心算法** - **活动选择问题**:如区间调度问题。 - **最小生成树**:Prim和Kruskal算法的贪心...

    几个算法的实现和算法作业

    - **插入排序**:将未排序元素逐个插入到已排序部分的正确位置,适合小规模或基本有序的数组。 - **快速排序**:使用分治策略,选取一个基准值,将数组分为两部分,一部分所有元素小于基准,另一部分所有元素大于...

    JavaScript实现不同的计算机科学算法

    - **插入排序**:将未排序的元素依次插入到已排序的部分,保持有序状态。 - **快速排序**:使用分治策略,选取一个基准元素,将数组分为两部分,然后对每一部分递归进行快速排序。 - **归并排序**:也是基于分治...

    算法之美python语言实现实验代码.zip

    - 插入排序:将未排序的元素逐个插入到已排序的序列中,保持有序状态。 - 快速排序:采用分治策略,选取一个基准值,将数组分为两部分,一部分的所有元素都小于基准,另一部分的元素都大于基准,然后对这两部分再...

    《》备忘5

    总的来说,算法备忘录5的核心在于持续学习和实践,通过不断地解决问题,积累经验,优化策略,从而提高我们处理复杂计算问题的能力。无论是在面试准备、项目开发还是日常学习中,这样的备忘都是一种有效的自我提升...

    C++数据结构与算法 第4版

    - 常见的排序算法有冒泡排序、选择排序、插入排序、快速排序、归并排序等。 - 不同的排序算法在时间复杂度、空间复杂度等方面有所不同。 2. **搜索算法(Searching Algorithms)**: - 搜索算法用于在一组数据中...

    Java常用算法手册源码

    - **插入排序(Insertion Sort)**:将未排序的元素逐个插入已排序的部分,保持有序状态。 - **选择排序(Selection Sort)**:每次找到最小(或最大)的元素,与数组首部交换位置。 - **快速排序(Quick Sort)*...

    计算机常用算法(有源码)

    - **插入排序**:将元素插入到已排序部分的正确位置,逐步构建完整的有序序列。 - **快速排序**:使用分治策略,通过一趟排序将待排记录分隔成独立的两部分,再分别对这两部分进行排序。 - **归并排序**:同样...

    C程序设计-c常用算法程序集

    - **插入排序**:将元素逐个插入到已排序部分的正确位置,保持排序。 - **快速排序**:基于分治策略,选择一个基准元素,然后将数组分为小于和大于基准的两部分,分别对这两部分进行快速排序。 - **归并排序**:...

    算法导论中文版

    1. **排序算法**:书中详细讲解了各种排序算法,如冒泡排序、插入排序、选择排序、快速排序、归并排序、堆排序等。它们各自有其适用场景和性能特点,对于理解数据组织和操作至关重要。 2. **搜索算法**:包括二分...

    C语言常见算法(swf)

    - **插入排序**:将未排序的元素逐个插入到已排序的部分,保持有序状态。 - **快速排序**:使用分治策略,通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小。 - **归并...

    计算机算法答案

    - **排序算法**:介绍了冒泡排序、选择排序、插入排序等基础排序算法的工作原理及其时间复杂度分析。 - **搜索算法**:包括线性搜索、二分搜索等基本搜索技术的实现和效率比较。 - **数据结构操作**:链表、栈、队列...

    labuladong算法秘籍

    在动态规划部分,labuladong介绍了动态规划的核心原理、备忘录、最优子结构等技术,并对应了LeetCode中的各种动态规划题型。 在数学算法部分,labuladong介绍了数学算法的各种技术,包括素数、阶乘、随机抽取元素等...

    算法导论——课后思考题

    4. **备忘录方法**:一种避免重复计算子问题解的技术。 5. **自底向上方法**:从最小子问题开始逐步构建更大问题的解。 #### 第16章:贪心算法 **主要内容:** - 贪心算法的基本概念 - 贪心算法的应用实例 - 分析...

    常用算法集

    2. **插入排序**:将未排序的元素逐个插入已排序部分,保持有序状态。 3. **选择排序**:每次找到剩余元素中的最小(或最大)值,与当前位置交换。 4. **快速排序**:利用分治策略,选取一个基准元素,将数组分为两...

    基于C#语言的查找、排序算法以及23设计模式的汇总.zip

    3. **行为型模式**:包括责任链、命令、解释器、迭代器、访问者、备忘录、观察者、状态、策略、模板方法和访问者模式,关注对象之间的交互和职责分配。 这些设计模式都是经过实践验证的解决方案,可以解决常见的...

    用python解决数据结构和算法_python编程_

    - **排序算法**:包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等,理解它们的时间复杂度和适用场景。 - **查找算法**:线性查找、二分查找、哈希查找,以及在不同数据结构中查找的效率比较。 -...

    基本排序算法及其在MapReduce的应用

    该文档为学习基本排序算法过程中的学习笔记,大部分内容从网络上其他渠道也能得到,仅用于记录备忘之用。冒泡、选择、插入三种作为基本的排序算法是必须要掌握的,而在MapReduce的实际应用中。在Map阶段,k-v溢写时...

Global site tag (gtag.js) - Google Analytics