摘要:
冒泡排序 原理 冒泡排序多次遍历列表。他比较相邻的元素,将不合顺序的交换。每一轮遍历都将下一个最大值放大正确的位置上。本质上,每个元素通过“冒泡”找打自己所属的位置。 代码实现 #!usr/bin/env python #-*- coding:utf-8 _*- # __author__:lianh 阅读全文
摘要:
选择排序 原理 一种是在所有数据中,从大到小排序,将最大值放入第一个位置;另一种是从小到大排序,将最大值放入最后一个位置。例如,一开始在所有的数据中挑选一个最小项放在第一个位置(假设从小到大排序),再从第二项开始挑选一个最小的值放在第二个位置,以此类推,知道排完序位置。 代码实现 #!usr/bin 阅读全文
摘要:
由于字典和集合都是程序中经常需要使用的数据结构,python语言的内置类型包含一个字典类型(dict)和两个集合类型(set和frozenset)。 在python语言的官方实现中,字典和两个集合类型都是基于散列表技术实现的数据结构,采用内消解技术解决冲突。 以dict为例: dict类型采用散列表 阅读全文
摘要:
插入排序 原理 一句话概括:依次选择一个待排序的数据,插入到前边已排好序的序列中。 1.从数组的第二个数据开始往前比较,即一开始用第二个数和他前面的一个比较,如果 符合条件(比前面的大或者小,自定义),则让他们交换位置。 2.然后再用第三个数和第二个比较,符合则交换,但是此处还得继续往前比较,比如有 阅读全文