算法与数据结构
文章平均质量分 78
ruffian_sheep
这个作者很懒,什么都没留下…
展开
-
输入入栈序列,所有出栈可能性(用BFS)
偶然的想法。 in_list为要输入的入栈队列,out_list为出栈队列的所有可能性列表。 感觉还得优化优化,改进一下。先记录。 def zhan(in_list): t=len(in_list) all_list=[[[[-1],[t-1,t]]]] f=True while f: all_list.append([]) f = False for loc in all_list[0]: if loc原创 2020-07-15 08:55:08 · 996 阅读 · 0 评论 -
约瑟夫环解题
从0开始编号。m为第几个单位,n为m开始数起第n个单位。in_list为需要进行处理的列表。 返回order_list为序号出栈列表,out_list为单位出栈列表。 def od(m,n,in_list): out_list=[] order_list=[] times=len(in_list) s=[i for i in range(times)] for i in range(times): num=(m+n-1)%len(s)-1原创 2020-06-29 11:49:21 · 242 阅读 · 0 评论 -
用二叉树求解关于25匹马,五个赛道。取前三名,和取前五名最少次数是多少。
关于25匹马,五个赛道。取前三名,和取前五名最少次数是多少。 面试中遇到的问题,以前听过但是没有看题,也没有思考过。面试结束认真思考了一下 这个问题引入二叉树的话会更好理解和解决 首先讲如何取得前三名 首先不论怎么操作,六次保底是跑不掉的。不管是取前三名还是前五名。 我们分别跑了六次,得到了 A1 B1 C1 D1 E1 A2 B2 C2 D2 E2 ...原创 2018-08-27 19:04:00 · 26380 阅读 · 21 评论