专栏
扫码关注公众号
设有5000个待排序的记录的关键字,如果需要用最快的方法选出其中最小的10个记录关键字,则用下列哪个方法可以达到此目的()
正确答案:B首先,这个题的宗旨是以最短的时间达到局部有序!所以应用堆排序这样处理:1.取出10个数先进行堆排序。2.依次遍历剩下的5000-
以下哪种不是非稳定排序算法
正确答案是A(1)冒泡排序冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果
string = "192.0.0.1?!289.0.0.1!0.0.0.0!192.163.10.28?192.0.0.1"
要求:
importres="192.0.0.1?!289.0.0.1!0.0.0.0!192.163.10.20?192.0.0.1"ips=re.split(r"\?!|!|\?",s)deflastOne(i):returni.split('.')[-1]ips.sort(key=lastOne)print(ips)
快速排序的基本思想是什么?
该思想可以概括为:挖坑填数+分治法。1、从要排序的数据中取一个数为“基准数”。2、通过一趟排序将要排序的数据分割成独立的两部分,其中左边的数据都比“基准数”小,右边的数据都比“基准数”大。3、然后再按步骤2对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。