随笔分类 -  Python数据结构与算法

纪录Python数据结构与算法小编程
求解斐波那契数
摘要:斐波那契数 由0和1开始,之后的费波那契系数就是由之前的两数相加而得出。 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233... 代码实现 max为初始0,1后出现的数字最大个数 def fib(max): n, a, b = 0, 0, 1 whi 阅读全文
posted @ 2017-12-20 23:01 玩蛇的 阅读(390) 评论(0) 推荐(0)
迷宫问题
摘要:问题 用一个二维数组表示一个简单的迷宫,用0表示通路,用1表示阻断, 老鼠在每个点上可以移动到相邻的东南西北四个点,设计一个算法, 模拟老鼠走迷宫,找到入口到出口的一条路径 例如: 算法: 1.用一个栈来记录老鼠从入口到出口的路径. 2.走到某点后,将该点坐标压栈,并把该点值置为1,表示走过了. 3 阅读全文
posted @ 2017-11-05 19:45 玩蛇的 阅读(296) 评论(0) 推荐(0)
使用邻接矩阵构造图
摘要:问题 如何使用list构造图 邻接矩阵的方式 Python代码示例 阅读全文
posted @ 2017-10-30 18:11 玩蛇的 阅读(752) 评论(0) 推荐(0)
图的概念
摘要:问题 什么是图 理解 图G由两个集合组成 : 一个由顶点构成的有穷非空集合和一个由边构成的有穷允空集合 根据边方向分类 : 无向图,有向图 度 : 无向图A顶点度数3,有向图A出度1,入度2 根据边权值分类 : 边无权值的图,边有权值的图 权值 : 北京和大连之间的权值7,北京和济南的权值7 阅读全文
posted @ 2017-10-28 01:34 玩蛇的 阅读(263) 评论(0) 推荐(0)
先序遍历二叉树
摘要:问题 如何遍历一个二叉树 遍历二叉树就是访问二叉树的每一个节点 二叉树父结点下先左访问,先序遍历(根左右) 例如:遍历以下的二叉树 遍历结果:ABDECF Python代码示例 阅读全文
posted @ 2017-10-25 14:35 玩蛇的 阅读(282) 评论(0) 推荐(0)
创建二叉树
摘要:问题 创建一个二叉树 二叉树有限多个节点的集合,这个集合可能是: 1. 空集 2. 由一个根节点,和两棵互不相交的,分别称作左子树和右子树的二叉树组成 创建二叉树: 1. 创建节点 2. 再创建节点之间的关系 Python代码示例 阅读全文
posted @ 2017-10-25 02:20 玩蛇的 阅读(272) 评论(0) 推荐(1)
二叉树个数
摘要:问题 求n个节点不同二叉树个数 1个节点 根节点1 1种 1种二叉树 2个节点 根节点1 左节点1 1种(依照1节点的推断) 根节点1 右节点1 1种(依照1节点的推断) 2种二叉树 3个节点 根节点1 左节点0 右节点2 2种(依照2节点的推断) 根节点1 左节点1 右节点1 1种(依照1节点的推 阅读全文
posted @ 2017-10-24 23:59 玩蛇的 阅读(431) 评论(0) 推荐(0)
插入排序
摘要:问题 对一组元素按照从小到大重新排序 例如: 27, 33, 28, 4, 2, 26, 13, 35, 8, 14 排序后: 2, 4, 8, 13, 14, 26, 27, 28, 33, 35 插入排序算法: 1. 从第一个元素开始,该元素可以认为已经被排序 2. 取出下一个元素,在已经排序的 阅读全文
posted @ 2017-10-23 00:22 玩蛇的 阅读(249) 评论(0) 推荐(0)
冒泡排序
摘要:问题 对一组元素按照从小到大重新排序 例如: 27, 33, 28, 4, 2, 26, 13, 35, 8, 14 排序后: 2, 4, 8, 13, 14, 26, 27, 28, 33, 35 冒泡排序算法: 1. 比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个 2. 对每一对相 阅读全文
posted @ 2017-10-20 17:39 玩蛇的 阅读(251) 评论(0) 推荐(0)
二项式系数
摘要:问题 编写程序,求二项式系数列表中(杨辉三角)第k层系数 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ....... (a+b)^k 其中k从0开始 1. 把第k行的系数存储在队列中 2. 依次出队k层的系数(每行最后一个1不出队),并推算k+1层系数 添加到队尾,最后在队尾添加一个 阅读全文
posted @ 2017-10-20 04:27 玩蛇的 阅读(495) 评论(0) 推荐(0)
括号匹配
摘要:问题 假设表达式中允许包含3种括号()[]{},其嵌套顺序是是正确的。 编写一个函数,判断一个表达式字符串,括号匹配是否正确 例如: {()[()]}这样的格式是正确的, [{),[()),(()}这样的格式不正确 Python代码示例 !/usr/bin/env python encoding: 阅读全文
posted @ 2017-10-20 04:19 玩蛇的 阅读(271) 评论(0) 推荐(0)