自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

转载 Python数据结构——二维数组

# 创建二维数组# 必须要用for i in range(2),不然就会变成浅复制num_list = [ [0] * 5 for i in range(2)]num_list# 数组赋值num_list[0][0] = 1num_list

2019-05-16 17:47:04 742

转载 Python数据结构——链表

# 链接表基础结构# item用于存储数据# next指向下一个数据class Node(): # 用tuple定义允许绑定的属性名称 __slots__=['_item','_next'] def __init__(self,item): self._item=item self._next=None def getItem(...

2019-05-16 17:45:24 146

转载 Python数据结构——队列

# 队列(queue)也是表,使用队列时插入和删除在不同的端进行。# 队列的基本操作是Enqueue(入队),在表的末端(rear)插入一个元素,还有出列(Dequeue),删除表开头的元素。class Queue(object): # 使用list来实现 def __init__(self): self.queue = [] def...

2019-05-16 17:43:06 217

转载 Python数据结构——栈

# 栈(Stack)是限制插入和删除操作只能在一个位置进行的表,该位置是表的末端,称为栈的顶(top)。栈的基本操作有PUSH(入栈)和POP(出栈)。# 栈又被称为LIFO(后入先出)表。# 栈可以通过list来实现class Stack(object): # 初始化 def __init__(self): self.stack = [] # 是否...

2019-05-16 17:41:28 148

转载 11.最长公共子序列

import numpy def find_lcseque(s1, s2): # 生成字符串长度加1的0矩阵,m用来保存对应位置匹配的结果 m = [ [ 0 for x in range(len(s2)+1) ] for y in range(len(s1)+1) ] # d用来记录转移方向 d = [ [ None for x in ...

2019-05-16 17:38:44 218

转载 10.最长公共子串

def find_lcsubstr(s1, s2): # 生成0矩阵,为方便后续计算,比字符串长度多了一列 m = [[0 for i in range(len(s2)+1)] for j in range(len(s1)+1)] # 最长匹配的长度 mmax = 0 # 最长匹配对应在s1中的最后一位 p = 0 for i i...

2019-05-15 18:04:12 201

转载 9.背包问题

def bag(n, c, w, v):# """# 测试数据:# n = 6 物品的数量,# c = 10 书包能承受的重量,# w = [2, 2, 3, 1, 5, 2] 每个物品的重量,# v = [2, 3, 1, 5, 4, 3] 每个物品的价值# """ # 置零,表示初始状态,多建了一行的空行 value = ...

2019-05-15 18:02:36 190

转载 8.贪婪算法

# 最少的电台数,覆盖最多的州# 需要覆盖的州的集合states_needed = set(["mt", "wa", "or", "id", "nv", "ut", "ca", "az"])# 各电台覆盖的州的集合stations = {}stations["kone"] = set(["id", "nv", "ut"])stations["ktwo"] = set(["wa", "...

2019-05-15 18:00:55 124

转载 7.狄克斯特拉算法

# the graphgraph = {}graph["start"] = {}graph["start"]["a"] = 6graph["start"]["b"] = 2graph["a"] = {}graph["a"]["fin"] = 1graph["b"] = {}graph["b"]["a"] = 3graph["b"]["fin"] = 5graph["fin...

2019-05-15 17:59:51 216

转载 6.广度优先搜索

from collections import deque# 名字最后一个为m字母的为芒果销售商def person_is_seller(name): return name[-1] == 'm'graph = {}graph["you"] = ["alice", "bob", "claire"]graph["bob"] = ["anuj", "peggy"]graph...

2019-05-15 17:58:29 117

转载 5.快速排序

def quicksort(array): if len(array) < 2: # 基线条件:为空或只包含一个元素的数组是“有序”的 return array else: # 递归条件 pivot = array[0] # 由所有小于等于基准值的元素组成的子数组 ...

2019-05-15 17:56:43 82

转载 4.栈

def fact(x): if x == 1: return 1 else: return x * fact(x-1)print(fact(5))

2019-05-15 17:55:16 117

转载 3.递归

def countdown(i): # base case if i <= 0: return 0 # recursive case else: print(i) return countdown(i-1)countdown(5)

2019-05-15 17:52:50 145

转载 2.选择排序

def findSmallest(arr): # 存储最小的值 smallest = arr[0] # 存储最小值的索引 smallest_index = 0 for i in range(1, len(arr)): if arr[i] < smallest: smallest_index = i ...

2019-05-15 17:47:17 111

转载 1.二分查找

def binary_search(list, item): # low和high用于跟踪要在期中查找的列表部分 low = 0 high = len(list) - 1 # 只要范围没有缩小到只包含一个元素 while low <= high: # 就检查中间的元素 mid = (low + high) // 2...

2019-05-15 17:23:12 103

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除