自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一个成本仅需2元,价值500万的项目 1.0版本

import randomresult1 = []result2 = []for i in range(5): _num = random.randint(1, 35) while _num in result1: _num = random.randint(1, 35) result1.append(_num)for i in range(2): _num = random.randint(1, 12) while _num in res.

2020-06-16 10:00:59 199

原创 金矿问题

gm = [[77,92], [22, 22], [29, 87], [49, 46], [99,90]]gold = []for i in range(100): gold.append([-1] * 5)def gold_mine(p , n): # 边界 第一个金矿 人数够就挖 不够就不挖 if n == 1: return 0 if p < gm[n - 1][0] else gm[n - 1][1] # 数据已经保存了 .

2020-06-12 17:14:43 228

原创 动态规划 买书

# coding:utf-8''' 有一书店引进了一套书,共有3卷,每卷书定价是60元,书店为了搞促销,推出一个活动,活动如下: 如果单独购买其中一卷,那么可以打9.5折。 如果同时购买两卷不同的,那么可以打9折。 如果同时购买三卷不同的,那么可以打8.5折。 如果小明希望购买第1卷x本,第2卷y本,第3卷z本,那么至少需要多少钱呢?(x、y、z为三个已知整数)。'''prize = 60x, y, z = 4, 1, .

2020-06-06 14:33:44 360

原创 mongodb慢查询排查

是否开启了慢查询记录选择某一数据库,执行db.getProfilingStatus(),可得到如下结果:was=1表示开启了慢查询记录,0表示未开启showms表示记录超过多少ms的数据库操作开启记录慢查询开始方法有2种只开启某一个数据库选中某一数据库后,shell里执行db.setProfilingLevel(1,200),其中,参数1表示记录的级别,参数2表示记录大于多...

2019-04-26 16:29:32 474

原创 罗马数字

x = {1: 'I', 5: 'V', 10: 'X', 50: 'L', 100: 'C', 500: 'D', 1000: 'M'}rome_num = 'IIIIVIIIIX' + 'XXXXLXXXXC' + 'CCCCDCCCCM'aa = ''a = 998for i in range(len(str(a)), 0, -1): b = a // 10 ** (i -...

2018-09-15 23:35:41 987

原创 约瑟夫环

# 有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 3 报数),凡报到 3# 的人退出圈子,问最后留下的是原来第几号的那位。# 有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 3 报数),凡报到 3# 的人退出圈子,问最后留下的是原来第几号的那位。num = [x for x in range(1, 42)]k, a = 0, 0while len...

2018-09-15 23:30:31 166

原创 科赫曲线

一个好看的雪花import turtlebob = turtle.Turtle()bob.speed(10000)def koch(t, a): if a &lt; 10: t.fd(a) return koch(t, a/3) t.lt(60) koch(t, a/3) t.rt(120) koch(t,...

2018-09-15 23:28:05 1185

原创 猴子偷桃

# 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃# 了一个第二天早上又将剩下的桃子吃掉一半, 又多吃了一个。 以后每天早上都吃了前一# 天剩下的一半多一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘# 了多少。'''倒推'''def tao(a): if a == 1: return 1 return (ta...

2018-09-15 23:24:50 822

原创 汉诺塔

'''汉诺塔的移动也可以看作是递归函数:f(n)=2^n-1(步数)我们对柱子上我编号为a,b,c,将所有的圆盘从a移动到c可以描述为如果a只有一个圆盘,可以直接移动到c;如果a有n个圆盘,可以看成1个底盘+(n-1)个圆盘,首先需要把(n-1)个圆盘移动到b,然后,将a的最后一个圆盘移动到c,再b的(n-1)个圆盘移动到c:'''def move(n, a, b, c): ...

2018-09-15 23:23:48 175

原创 杨辉三角

def yhsj(a): lst = [] for i in range(1, len(a)): lst.append(a[i]+a[i-1]) lst.append(1) lst.insert(0, 1) return lstdef aa(x): if x == 2: return [1,1] retur...

2018-09-15 23:20:03 157

原创 有序集合

a = [9, 1, 2, 2, 3, 3, 4, 'a', 4, 5, 5, 6, 6]b = sorted(set(a), key=a.index)可以让集合以之前的顺序显示

2018-09-15 23:17:05 629

原创 斐波那契

def fibo(num): if num == 1: return 1 elif num == 0: return 0 return fibo(num-1) + fibo(num - 2) 尾部递归, 用另外两个参数记录之前的值,防止重复计算# 尾部递归def fibo(a, b, c): if a == 1:...

2018-09-15 23:12:01 144

原创 快速排序

def quick_sort(lst, low, high): # 如果左指针 一般是等于 右指针 就退出循环 if low &gt;= high: return pivot = lst[low] left = low right = high while left &lt; right: # 当右指针代表的元素大于...

2018-09-15 23:06:11 91

原创 归并排序

def merge_sort(a): mid = len(a) // 2 # 当递归进入到最底层 列表只有一个元素就返回这个列表 if len(a) == 1: return a # 递归调用算法 返回左边的列表 left_list = merge_sort(a[:mid]) # 递归调用算法 返回右边的列表 # 以此类...

2018-09-15 23:00:27 125

原创 八皇后

 def check(state, nextX): nextY = len(state) for i in range(nextY): if abs(state[i]-nextX) in (0, nextY-i): return True return Falsedef queen(n, state=()): for...

2018-09-14 22:50:22 169

原创 二叉树

class Node(object): def __init__(self, item): self.item = item self.lchild = None self.rchild = Noneclass DoubleTree(object): def __init__(self, node=None): ...

2018-09-14 22:44:42 118

原创 毕达哥拉斯三元组

from math import sqrt# a+b+c=1000 a^2+b^2=c^2# a^2=c^2-b^2=(c+b)(c-b) 假设 c+b=s^2 c-b=t^2# 所以 a^2=s^2*t^2 so a=s*t# c=(s^2+t^2)/2 b=(s^2-t^2)/2# 所以 s*t + (s^2+t^2)/2 + (s^2-t^2)/2 = 1000 ...

2018-09-14 22:41:04 534

原创 九宫格

lst = list()for i in range(1, 10): for j in range(1, 10): for k in range(1, 10): if i != j and j != k and i != k: if i + j + k == 15: lst....

2018-09-14 22:36:39 273

原创 希尔排序

给定一个系数,所有元素按照系数间隔进行插入排序def shell_sort(a): step = len(a) // 2 while step: for i in range(step, len(a)): while i-step &gt;= 0: if a[i] &lt; a[i - step]: ...

2018-09-14 22:32:54 104

原创 插入排序

将前面的元素当作已经排好序的,再一次插入其中与其进行比较版本1:def insertion_sort(lst): for i in range(1, len(lst)): for j in range(i, 0, -1): if lst[j-1] &gt; lst[j]: lst[j-1], lst[j] =...

2018-09-14 22:30:05 87

原创 选择排序

原理:每次都选择最小的元素与其交换位置第一版:def select_sort(_list): for i in range(1, len(_list)): min_num_index = _list[1:].index(min(_list[i:])) + 1 if _list[i - 1] &gt; _list[min_num_index]: ...

2018-09-12 23:07:39 129

原创 冒泡排序

把相邻的元素作比较,较大的元素慢慢浮现到最后第一版:_list = [0,9,8,7,6,5,4,3,2,1]for i in range(len(_list)): for j in range(i+1, len(_list)): if _list[i] &gt;= _list[j]: _list[i],_list[j] = _list[...

2018-09-12 22:51:30 108

空空如也

空空如也

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

TA关注的人

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