算法导论—读书笔记2010.12.6

算法就是一系列的计算步骤,用来将输入数据转换为输出结果。

 

数据结构师存储和组织数据的一种方式,以便于对数据进行访问和修改。

 

插入排序算法,对n个数据项的时间大约是c1n^2,其中c1是一个不依赖于n的常量。亦即该算法所需的时间大致与n^2成正比。

 

合并排序算法,排序n个数据项的时间大约是c2log(2)(n)

 

通常有c1<c2,输入规模对运行时间的影响比常量因子要大。较小规模时,插入排序比合并排序要快,但n变的足够大后,合并排序就比插入快,并且随着n的增多,合并排序的相对优势越来越明显。

 

插入排序

INSERTION-SORT(A)       

for j <-- 2 to length(A)

  do key <-- a[j]

       i <-- i-1

       while i > 0 and a[i] > key

           do A[i+1] <-- a[i]

                i <-- i-1

       a[i+1] <-- key

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值