希尔排序思路 希尔排序是一种分组插入排序算法 首先取一个整数d=n/2,将元素分为d个组,每组相邻两个元素距离为d,各组内进行插入排序 接着取第二个整数d=d/2,重复上面分...
直接寻址法 U表示所有可能出现的key范围,K表示实际的key。如图建一个列表,下标包含所有可能的key缺点: 当U范围很大时,实际的K范围很小,费内存 只能处理key是 ...
栈解决括号匹配问题 一个字符串中包含小括号、中括号、大括号,判断该字符串中的括号是否匹配 ()()[]{} 匹配 ([{()}]) 匹配 []( 不匹配 [(]) 不匹配 ...
什么是数据结构 数据结构就是设计数据以何种方式组织并存储在计算机中。比如列表、集合、字典等都是一种数据结构 数据结构分类 线性结构:数据结构中的元素存在一对一的相互关系。比如...
计算规则 假设需要排序的列表是[1,0,3,5,3,2,2],从最小值0到最大值5,使用一个列表存储0~5之间所有数的出现次数计数结果:[1,1,2,2,0,1]即0出现1次...
多关键字如何排序 场景:员工表按照薪资排序,薪资相同的按照年龄排序尝试:先按照薪资排序(升序),再按照年龄排序(升序) 尝试:先按照年龄排序,再按照薪资排序 总结:多关键字排...
一、树相关知识 树的深度(高度):表示树最深有几层 树的度:每个节点的分叉数量叫度,所有节点中分叉数量最多的是树的度 二叉树:度不超过2的树(每个节点最多有两个分叉) 完全二...
0、前言 在采铜老师的《精进:如何成为一个厉害的人》一书中,看到这样一句话: “以大多数人的努力程度之低,根本轮不到拼天赋。” 这句看似鸡汤的话,说的不无道理。不信,看看我们...
赋值为NaN 判断是不是NaN 删除NaN 填充NaN
DataFrame是二维数组,是Series容器。DataFrame既有行索引,也有列索引。行索引,即横向索引,index,0轴,axis=0列索引,即纵向索引,column...
series是一维数组 series创建 修改Series类型 Series切片和索引 Series索引和值操作
数组的创建 numpy中常见的数据类型: 查看数据类型: 指定数据类型: 修改数据类型: 修改浮点型保留小数位数: 数组的形状 修改数组形状,reshape()方法不会改变数...
关键点 将第一个元素放到中间的位置,使得左边都小于它,右边都大于它 第一个元素的左边和右边,按照步骤一递归 尝试代码实现 运行后发现,报错了: 从第一趟排序过程走一遍,发现并...
关键点 无序区 有序区,一开始第一个元素就在有序区,每次从无序区选择一个元素,插入到有序区中,直到无序区变为空 插入的两种情况i表示要插入的无序区元素下标,j表示当前需要跟i...
关键点 无序区,一开始都是无序区 有序区,每次执行完有序区数量不断增大,无序区数量不断减小 排序的趟数 每趟遍历从无序区第二个元素开始向后找到最小的元素,和第一个元素交换,使...
关键点 无序区,一开始都是无序区 有序区,每次执行完有序区数量不断增大,无序区数量不断减小 排序的趟数 每趟比较的次数 以上图的10个数为例: 第一趟开始前:无序区:[1,3...