慕课数据结构与算法python版
文章平均质量分 78
加油啊DuXY
better and better
展开
-
《数据结构与算法分析python版》第十一周编程作业
《数据结构与算法分析python版》第十一周编程作业1、找到小镇法官题目内容:在一个小镇里,按从 1 到 N 标记了 N 个人。传言称,这些人中有一个是小镇上的秘密法官。如果小镇的法官真的存在,那么:1、小镇的法官不相信任何人。2、每个人(除了小镇法官外)都信任小镇的法官。3、只有一个人同时满足属性 1 和属性 2 。给定列表 trust,该列表由信任对 trust[i] = [a, b] 组成,表示标记为 a 的人信任标记为 b 的人。如果小镇存在秘密法官并且可以确定他的身份,请返回该法原创 2020-05-27 14:16:12 · 911 阅读 · 2 评论 -
《数据结构与算法分析python版》第十二周编程作业
《数据结构与算法分析python版》第十二周编程作业1、先修课题目内容:有 n 门课程要选,其编号分别由 0 至 n-1每个课程都有一些需要提前学完的先修课程:例如,假设在学习课程 0 前需要先学习课程 1 ,我们用一个先修关系对[0, 1]来表示这种 “后学习课程,先修课程” 的关系现给定一系列课程与若干先修关系,请判断是否存在一个方案可以学完所有课程输入格式:输入分为两行,第一行为一个整数,表示课程的总数第二行为一个嵌套列表的Python表达式,包含若干先修关系对输出格式:True或原创 2020-05-27 12:23:56 · 538 阅读 · 0 评论 -
慕课《数据结构与算法分析python版》期末
class BinaryTree: def __init__(self,key,val = None, left = None,right = None,parent = None): self.key = key self.val = val self.left = left self.right = right self.parent = parent def buildTree(lst): .原创 2020-05-26 17:19:01 · 1138 阅读 · 1 评论 -
《数据结构与算法分析python版》第十周编程作业
《数据结构与算法分析python版》第十周编程作业1、二叉查找树填空题目内容:给定一个二叉树结构,与一个整数列表,请将整数填充至二叉树对应节点内,使其成为一个二叉查找树;请输出该二叉查找树的层次遍历。下图展示了给定样例对应的二叉树结构:输入格式:每个测试样例第一行包含一个整数,为二叉树的节点总数N。随后N行分别给定了编号由0至(N-1)的节点的左右子树编号,以空格分隔;若编号-1则代表对应子树为空。最后一行给出了以空格分隔的N个整数输出格式:对填空后的二叉查找树进行层次遍历,按顺序输出整数序原创 2020-05-19 23:27:26 · 706 阅读 · 0 评论 -
Python二叉树的遍历及构建方法--持续更新中
二叉树的遍历1、前序遍历前序遍历:先访问 根节点 再分别递归遍历 左右子树1.1图示遍历顺序:1.2实现代码:# 外部函数:def preorder(tree): if tree: print(tree.getRootVal()) preorder(tree.getLeftChild()) preorder(tree.getRightChild())#作为类的方法:def preorder(self): print(self.key) if self.leftChild:原创 2020-05-19 17:52:04 · 682 阅读 · 0 评论 -
《数据结构与算法分析python版》第九周编程作业
《数据结构与算法分析python版》第九周编程作业1、二叉树复原题目内容:给定一种序列化二叉树的方式:从根节点起始按层次遍历二叉树所有“可能”存在节点的位置:若该位置存在节点,则输出节点值,并在下一层相应增加两个可用位置;否则输出None,且不增加下一层的可用位置。例如"[5, 4, 7, 3, None, 2, None, -1, None, 9]"是下图所示的二叉树序列化的结果:其中红色箭头对所有的None进行了标记。现给出一个二叉树以这种形式序列化的结果,请复原该二叉树并给出它的中序遍历原创 2020-05-16 23:35:00 · 838 阅读 · 2 评论 -
《数据结构与算法分析python版》第八周编程作业
《数据结构与算法分析python版》第八周编程作业1、字符串中所有重排题目内容:给定一个字符串s与待查找字符串p,请给出使得s[i:i+len§]是p的一个字母重排的所有下标i输入格式:两行字符串,第一行为s,第二行为p输出格式:所有满足条件的下标从小到大排列,以空格分隔输出若无对应下标,则输出"none"输入样例cbaebabacdabc输出样例:0 6脚本# -*...原创 2020-05-02 00:43:27 · 1035 阅读 · 3 评论 -
《数据结构与算法分析python版》第七周编程作业
《数据结构与算法分析python版》第七周编程作业1、快速排序主元题目内容:著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元(中值),通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边。 给定划分后的N个互不相同的正整数的排列,请问有多少个元素可能是划分前选取的主元例如给定的排列是[1, 3, 2, 4, 5]。则:1 的左边没有元素,右边...原创 2020-05-01 17:46:22 · 577 阅读 · 0 评论 -
四个例子快速理解递归算法-python
几个小例子来理解递归一、 先来一点基础的认识:1、递归是一个不断的将一个问题分成更小的子问题最终找到一个简单的基础问题,最后再由基础问题的解决逐步向上解决初始问题的过程。所以不难看出,递归其实是分为两部分的一个是向下的递推过程,另一个就是向上的回溯过程。2、从上面我们已不难发现,在这个过程中,是存在着栈的先进后出的过程的。而二者的关系就是在调用函数的时候,python会分配一个栈帧来处理该函...原创 2020-04-24 23:33:53 · 405 阅读 · 0 评论 -
《数据结构与算法分析python版》第六周编程作业
《数据结构与算法分析python版》第六周编程作业1、铺瓷砖题目内容:给定一个长度为N的区域,及4种不同长度的瓷砖:灰瓷砖(长为1格)、红瓷砖(长为2格)、绿瓷砖(长为3格)与蓝瓷砖(长为4格),求所有不同的铺满整个区域的方法数。例如:当N=5时,共有15种铺满区域的方法,示意图如下:输入格式:一个自然数N输出格式:一行数字,表示不同的方法总数5输出样例:15思路分析:...原创 2020-04-23 14:55:50 · 1088 阅读 · 0 评论 -
《数据结构与算法分析python版》第五周编程作业
《数据结构与算法分析python版》第五周编程作业1进制转换(10分)题目内容:给定一个M进制的数,请将其转换为N进制并输出输入格式:两行,第一行为空格分隔的两个数字,分别为10进制表示的M与N;其中M, N均满足2 ≤ M、N ≤ 36第二行为待转换的数字,其中每位超过9的部分从10至36分别用大写字母A-Z表示;输入数据保证其中最大位数对应数字不超过M输出格式:一行字符串,表示...原创 2020-04-21 12:39:21 · 691 阅读 · 0 评论 -
《数据结构与算法分析python版》第四周编程作业
《数据结构与算法分析python版》第四周编程作业1、有序队列题目内容一开始给出了一个由小写字母组成的字符串 S。我们规定每次移动中,选择最左侧的字母,将其从原位置移除,并加到字符串的末尾。这样的移动可以执行任意多次返回我们移动之后可以拥有的最小字符串(注:在Python3中,字符串的大小可用不等号比较)输入格式S。S为仅含有小写字母的字符串,长度不超过100000。输出格式一个与...原创 2020-04-17 10:19:18 · 934 阅读 · 0 评论 -
《数据结构与算法分析python版》第三周编程作业
@[TOC]慕课《数据结构与算法python版》第三周变成作业一维开心消消乐题目要求:脚本def xxl(s): stack = [] for item in s: if not len(stack)== 0: #栈非空执行 if item == stack[-1]: ...原创 2020-04-15 16:37:49 · 536 阅读 · 0 评论