插入排序算法的python实现

本文详细介绍了插入排序算法的工作原理,通过类比打扑克的过程来解释如何将一个无序序列逐步整理成有序序列。提供了Python实现代码,帮助读者更好地理解并应用这一高效排序方法。

插入排序(INSERTION SORT)是一个对少量元素进行排序的有效算法。

其原理类似于打扑克时的摸牌,每次从牌堆取最上面一张,插入手中的牌中的正确位置。


(图片来自《算法导论》)

以下是python代码实现:

def insert_sort(p_list):
  if len(p_list) <= 1:
  	return p_list;
  r_list = [p_list[0]];  
  for i in xrange(1,len(p_list)):
  	for j in xrange(len(r_list)-1,-1,-1):
  	  if p_list[i] >= r_list[j]:
  	  	r_list[j+1:0] = [p_list[i]];
  	  	break;
  	  if j == 0:
  	  	r_list[0:0] = [p_list[i]];
  return r_list;

enjoy it.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值