文档章节

insertionsort

潜水的挖掘机
 潜水的挖掘机
发布于 2017/02/28 12:59
字数 131
阅读 11
收藏 0
点赞 0
评论 0
//insertion sort 1
template<typename T>
void insertionsort_1(T arr[],int len)
{
    for(int i=1;i<len;++i)
    {
        for(int j=i;j>0;--j)
        {
            if(arr[j-1]>arr[j])
                swap(arr[j-1],arr[j]);//一次比较过程带来额外的三次赋值,待优化。
            else
                break;
        }
    }

}

//insertion sort 2
template<typename T>
void insertionsort_2(T arr[],int len)
{
    for(int i=1;i<len;++i)
    {
        T e=arr[i];
        int j=i;
        //向前寻找元素e的插入位置,若不满足条件,则将前面的元素向后摞。
        for(;j>0&&arr[j-1]>e;--j)
        {
            arr[j]=arr[j-1];
        }
        arr[j]=e;
    }

}

 

© 著作权归作者所有

共有 人打赏支持
潜水的挖掘机
粉丝 0
博文 13
码字总数 3204
作品 0
运维
基本数据结构之Sort

问题描述: BubbleSort InsertionSort ShellSort MergeSort HeapSort QuickSort 问题分析: 时间复杂度? 空间复杂度? 代码实现: public class BubbleSort { public static <AnyType extends......

关西大汉弹琵琶
2015/10/25
148
0
我已经把形参声明为const,为什么定义数组时还是提示必须为常量值

如下: void InsertionSort::TaDirectInsertionSort(int unsortedarea[],const int length) { int sortedarea[length]; } 我已经把形参声明为const,为什么定义数组时还是提示必须为常量值...

林威
2012/12/15
420
2
插入排序 InsertionSort

#include <stdio.h> include <string.h> include <stdlib.h> void insertionSort(void base, sizet nmeb, sizet size, int(compar)(const void , const void *)); void swap(void p1, void p......

COSE
2014/04/08
0
0
选择、冒泡和插入排序

1、选择排序 public static void selectSort(int[] a) { for(int i=0;i<a.length-1;i++) { for(int j=i+1;j<a.length;j++) { if(a[i] < a[j]) { int temp = a[i]; a[i] = a[j]; a[j] = temp......

无异常-陌生
2014/03/12
68
0
算法分析(2)经典排序算法对比

[TOC] 概述 上一篇文章分析了一下基本的排序算法以及Java的实现,不过没有比较深入的去分析,因为对于O(n^2)的算法实现比较简单,但是对于O(nLogn)的算法本身有些复杂,所以就分为两篇文章来...

wustor
2017/11/06
0
0
深入JDK源码之Arrays类中的排序查找算法

二分法查找算法,算法思想:当数据量很大适宜采用该方法。采用二分法查找时,数据需是排好序的。 基本思想:假设数据是按升序排序的,对于给定值x,从序列的中间位置开始比较,如果当前位置值...

陶邦仁
2015/03/15
0
0
【JDK优化】java.util.Arrays的排序研究

【java.uti.Arrays】 包含用来操作数组(比如排序和搜索)的各种方法。这篇文章我们就来研究一些大师们写的排序算法。 (1) 基本数据类型数组的排序,如Arrays.sort(int[])等。采用了一种经 ...

be_free
2014/03/09
0
0
编程面试过程中常见的10大算法

1. 字符串 如果IDE没有代码自动补全功能,所以你应该记住下面的这些方法。 toCharArray() // 获得字符串对应的char数组Arrays.sort() // 数组排序Arrays.toString(char[] a) // 数组转成字...

白志华
2015/09/19
233
0
JavaScript专题之乱序

JavaScript 专题系列第十九篇,讲解数组乱序,重点探究 Math.random() 为什么不能真正的乱序? 乱序 乱序的意思就是将数组打乱。 嗯,没有了,直接看代码吧。 Math.random 一个经常会遇见的写...

冴羽
2017/10/12
0
0
译:编程面试的10大算法概念汇总

以下是在编程面试中排名前10的算法相关的概念,我会通过一些简单的例子来阐述这些概念。由于完全掌握这些概念需要更多的努力,因此这份列表只是作为一个介绍。本文将从Java的角度看问题,包含...

拉偶有所依
2015/06/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Git 2.18版本发布:支持Git协议v2,提升性能

Git 2.18版本发布:支持Git协议v2,提升性能Git 2.18版本发布:支持Git协议v2,提升性能 新版本协议的主要驱动力是使 Git 服务端能够对各种 ref(分支与 tag)进行过滤操作。 这就意味着,G...

linux-tao
26分钟前
0
0
python浏览器自动化测试库【2018/7/22-更新】

64位py2.7版本 更新 document_GetResources 枚举页面资源 document_GetresourceText 获取指定url的内容 包括页面图片 下载地址下载地址 密码:upr47x...

开飞色
43分钟前
28
0
关于DCL双重锁失效及解决方案

关于DCL双重锁失效及解决方案 Double Check Lock (DCL)实现单例 DCL 方式实现单例的优点是既能够在需要时才初始化单例,又能够保证线程安全,且单例对象初始化后调用getInstance方法不进行...

DannyCoder
48分钟前
0
0
PowerDesigner 16.5 安装配置

PowerDesigner16.5破解版是一款业内领先且开发人员常用的数据库建模工具,PowerDesigner可以从物理和概念两个层面设计数据库,方便用户制作处清晰直观的数据流程图和结构模型,欢迎有需要的朋...

Gibbons
今天
0
0
mac Homebrew 指令积累

1通用命令 brew install [包名] //安装包 brew list //列举安装的包 brew info [包名] // 显示安装包的详细信息 mysql 相关 #启动mysql 服务 brew service start mysql my...

Kenny100120
今天
0
0
前端Tips: 创建, 发布自己的 Vue UI 组件库

创建, 发布自己的 Vue UI 组件库 前言 在使用 Vue 进行日常开发时, 我们经常会用到一些开源的 UI 库, 如: Element-UI, Vuetify 等. 只需一行命令, 即可方便的将这些库引入我们当前的项目: n...

ssthouse_hust
今天
1
0
大数据教程(2.13):keepalived+nginx(多主多活)高可用集群搭建教程【自动化脚本】

上一章节博主为大家介绍了目前大型互联网项目的keepalived+nginx(主备)高可用系统架构体系,相信大家应该看了博主的文章对keepalived/nginx技术已经有一定的了解,在本节博主将为大家分享k...

em_aaron
今天
5
0
Git 2.18版本发布:支持Git协议v2,提升性能

在最新的官方 Git 客户端正式版2.18中添加了对 Git wire 协议 v2 的支持,并引入了一些性能与 UI 改进的新特性。在 Git 的核心团队成员 Brandon Williams 公开宣布这一消息前几周,Git 协议 ...

六库科技
今天
0
0
Java8新特性之接口

在JDK8以前,我们定义接口类中,方法都是抽象的,并且不能存在静态方法。所有的方法命名规则基本上都是 public [返回类型] [方法名](参数params) throws [异常类型] {}。 JDK8为接口的定义带...

developlee的潇洒人生
今天
0
0
aop + annotation 实现统一日志记录

aop + annotation 实现统一日志记录 在开发中,我们可能需要记录异常日志。由于异常比较分散,每个 service 方法都可能发生异常,如果我们都去做处理,会出现很多重复编码,也不好维护。这种...

长安一梦
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部