随笔分类 - python
摘要:``` from collections import deque $moze = [ [1,1,1,1,1,1,1,1,1,1], [1,0,0,1,0,0,0,1,0,1], [1,0,0,1,0,0,0,1,0,1], [1,0,0,0,0,1,1,0,0,1], [1,0,1,1,1,0,0,0,0,1], [1,0,0,0,1,0,0,0,0,1], [1,0,1,0,0,0,1,0,0
阅读全文
摘要:``` stack) stackMaxTop == $this->Top) { return "栈已满"; } array_push($this->stack,$value); ++$this->Top; return '栈顶的值'.$this->Top; } #出栈 public function pop() { if (!$this->stack_is_nul...
阅读全文
摘要:``` !/usr/bin/python 基数排序 将列表中的数按照基数进行排序 先排序个位的数 在排序十位的 依次类推可以 def radix_sort(li): max_mun = max(li) 确定列表中最大的值 it = 0 while 10 it
阅读全文
摘要:``` !/usr/bin/python coding=UTF 8 思路:前提是此列表的必须是已经排好序的(例如:[2,4,5,7,1,3,6,8]), 分为两部分 ,从开始到中间,从中间到最后开始比较,然后进行加到列表后面,肯定有一边提前结束,结束后直接将剩余的列表加入到列表中就行 def mer
阅读全文
摘要:``` !/usr/bin/python coding=UTF 8 i 指的是父节点 求一个父节点的左节点 是i 2+1 右节点 i 2+2 i 指的是孩子节点 求父节点的方式是 (i 2)//2 思路:先进行堆的调整或构造成一个大堆,然后在进行堆的排序 sift函数思路:循环将父节点和左右孩子节点
阅读全文
摘要:``` #!/usr/bin/python #coding=UTF-8 def partition(li,left,rigth): temp = li[left] #获取第一个值假定为列表的中间值 while left = li[left]:#从列表开头开始循环比较左边的值 left +=1 #依次向右进一步 li[rigth]=li[left] #将找到的值直接写到列表最开始(右边) 因为tem
阅读全文
摘要:``` #!/usr/bin/python def insert_sort(li): #将输入的列表以插入的方式排序 #先取出一个值,进行在已经完成的排序列表上循环比较后进行左或者右的插入完成排序 for i in range(1,len(li)): #假定第一个值是已经排好序的第一个列表 所以从下标1开始 temp = li[i] #循环取出无序列表的值 j = i - 1 #循环获取有序列表的
阅读全文
摘要:``` !/usr/bin/python def select_sort(li): 循环列表依次拿出最小的值将值放在第一个位置 for i in range(len(li) 1): 最后一个数肯定是最大或者最小 不需要比较 所以循环次数减少1 min_loc = i 假设列表第一个数为最小数 for
阅读全文
摘要:``` —————————— 二分查找 python实现 !/usr/bin/python 输入的列表必须是已经排好序的列表 def binary_search(li, val): left = 0 定义开始范围 right = len(li) 1 定义查找结束范围 while left val:
阅读全文
摘要:``` #!/usr/bin/python #coding=UTF-8 def bubble_sort(li): #循环列表每次拿出一个值,和列表中所有的值进行比较之后然后切换位置 for i in range(len(li)-1): #躺数循环 最后一个数不用比较 已经是最大或者最小的数 所以躺数减少1 exchange = False #增加标识 以减少循环次数 for j i...
阅读全文

浙公网安备 33010602011771号