01 2018 档案

摘要:【顺序搜索(sequential search)】顾名思义就是按顺序搜索,直到找到目标元素或者搜索完列表中所有元素发现该列表中不包含目标元素。 另外,如果是一个正序排列的列表,要么找到目标元素,要么扫描到一个比目标元素大的位置就可以结束搜索。 【Performance Analysis】1. 长度为 阅读全文
posted @ 2018-01-29 13:27 JADE91 阅读(219) 评论(0) 推荐(0)
摘要:【面向对象的三大特征】: 【封装(encapsulation)】: 通过抽象的类把数据和方法封装起来。实例的数据只能通过public interface(即实例的方法)来获取或操作。 【优点】:1. 功能只需在一个地方定义,而不需要在很多地方重复定义 2. 保证对象内部的数据的安全性 3. 当我们想 阅读全文
posted @ 2018-01-25 12:11 JADE91 阅读(1223) 评论(0) 推荐(0)
摘要:【使用工具】 PyMySQL 模块, MySQL 【实例】 1. 利用PyMySQL模块,连接到MySQL数据库: 首先我在MySQL中创建了一个数据库,名为tutorial: 打开终端,输入 mysql -u root -p 打开mysql。其中 -u 表示用户名, -p 表示密码。我的用户名为r 阅读全文
posted @ 2018-01-23 10:05 JADE91 阅读(463) 评论(0) 推荐(0)
摘要:【快速排序】: 利用递归算法, 首先选择一个基准值(pivot value),这里我们选列表的第一个值作为例。这个基准值的作用是协助列表的分割。 这个基准值在正序列表中的正确位置,我们称之为分割点(split point)。这个点用于将列表分成两个部分,然后再对每个部分做快速排序。 分割过程如下: 阅读全文
posted @ 2018-01-21 13:30 JADE91 阅读(420) 评论(0) 推荐(0)
摘要:【归并排序】这里我们利用递归算法不断地将列表一分为二,base case就是列表中没有元素或者只剩一个元素,因为此时这个子列表必然是正序的;然后再逐步把两个排序完成的子列表合并成一个新的正序列表,直到所有元素排序完毕。 【示意图】这是一个从下至上的过程(Bottom-Up) 将列表不断从中间分成两个 阅读全文
posted @ 2018-01-21 11:52 JADE91 阅读(353) 评论(0) 推荐(0)
摘要:【希尔排序】:也叫做递减增量排序算法,在插入排序算法的基础上做了改进。 希尔排序最开始将列表按照一定的步长(即增量)分成多个子序列,多每个子序列进行插入排序; 然后减小步长,重新分割子序列,再对每个子序列进行插入排序; 重复上述步骤,直到步长为1,对整个列表进行插入排序,排序完成。 【示意图】 给定 阅读全文
posted @ 2018-01-21 11:10 JADE91 阅读(326) 评论(0) 推荐(0)
摘要:【插入排序】:每次保证列表最左端子序列是排好顺序的,然后取下一个元素,扫描其左端的子序列,将其中大于目标元素的元素右移一个位置,直到找到合适的位置将目标元素插入子序列中。逐步增大排序完成的sublist的长度,最终完成整个列表的排序 算法思路如下: 1. 列表最左边第一个元素认为已经排序好了 2. 阅读全文
posted @ 2018-01-21 10:29 JADE91 阅读(272) 评论(0) 推荐(0)
摘要:【选择排序】 选择排序是在冒泡排序(Bubble Sort)的基础上做了改进:每完成一次走访过程(pass)最多只需要交换一次。 每一次走访过程,寻找最大值,当此次走访结束时,将最大值交换到正确的位置; 接下来再在剩下的sublist中继续重复上述过程,直到完成n-1次走访(n为列表的长度); 此时 阅读全文
posted @ 2018-01-21 09:49 JADE91 阅读(357) 评论(0) 推荐(0)
摘要:推荐一个可视化的网站 【 Visual Algo 】: URL= 'https://visualgo.net/en/sorting' 这个网站给出了各种排序算法的原理和过程,通过动态形式直观得展现出来。另外还给出了相关的pseudo-code,以及具体执行到code的哪一步。 【冒泡排序】 需要重复 阅读全文
posted @ 2018-01-20 13:19 JADE91 阅读(329) 评论(0) 推荐(0)
摘要:Python内建的字典就是用 hash table实现的。这里我们只是通过实现自己的hash table来加深对hash table 和hash functions的理解。 【 概念1: Mapping (映射)】 字典通过键(Key)来索引。一个key对应一个存储的value。任意不可变的数据类型 阅读全文
posted @ 2018-01-20 09:40 JADE91 阅读(423) 评论(0) 推荐(0)