数据结构与算法(Python语言实现)
why502b
做一点小小的改变
展开
-
栈(Stack)的理解及其应用
栈的抽象数据类型栈的抽象数据类型由以下结构和操作定义。如上所述,栈被构造为项的有序集合,其中项被添加和从末端移除的位置称为“顶部”。栈是有序的 LIFO 。栈操作如下:Stack() 创建一个空的新栈。 它不需要参数,并返回一个空栈。push(item)将一个新项添加到栈的顶部。它需要 item 做参数并不返回任何内容。pop() 从栈中删除顶部项。它不需要参数并返回 item 。栈被修...原创 2019-03-05 00:36:51 · 539 阅读 · 0 评论 -
队列 (Queue) 的理解及其应用
什么是队列队列抽象数据类型由以下结构和操作定义:队列被构造为在队尾添加项的有序集合,并且从队首移除。队列保持 FIFO 排序属性。 队列操作如下:方法描述Queue()创建一个空的新队列。 它不需要参数,并返回一个空队列。enqueue(item)将新项添加到队尾。 它需要 item 作为参数,并不返回任何内容。dequeue()从队首移除项。它不需要参数...原创 2019-03-06 01:59:54 · 1268 阅读 · 0 评论 -
判断两字符串是否为乱序字符串(Python3实现)
乱序字符串定义显示不同量级的算法的一个很好的例子是字符串的乱序检查。乱序字符串是指一个字符串只是另一个字符串的重新排列。例如,‘heart’ 和’earth’ 就是乱序字符串。‘python’ 和 ‘typhon’ 也是。为了简单起见,我们假设所讨论的两个字符串具有相等的长度,并且他们由 26 个小写字母集合组成。我们的目标是写一个布尔函数,它将两个字符串做参数并返回它们是不是乱序。求解方法...原创 2019-03-03 16:21:38 · 1257 阅读 · 1 评论 -
快速排序的Python实现
本文转自:快速排序的四种python实现作者:lookupheaven快速排序算法,简称快排,是最实用的排序算法,没有之一,各大语言标准库的排序函数也基本都是基于快排实现的。本文用python语言介绍四种不同的快排实现。1. 一行代码实现的简洁版本quick_sort = lambda array: array if len(array) <= 1 else quick_sor...转载 2019-05-02 22:47:28 · 118 阅读 · 0 评论