![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
single6
这个作者很懒,什么都没留下…
展开
-
快速排序--思路理解
与归并排序一样,快速排序也是一个分治算法,需要选择一个基准(第一个元素,最后一个元素,随机一个元素),以此基准作为划分;快速排序的关键是划分partion();。每一趟划分,我们就可以将作为基准值 x 放到排序数组的正确位置,并且将所有比 x 小的放到 x 的左边,所有比 x 大的元素放到 x 的右边。class QuickSort { /*将最后一个元素作为 pivot 进行划分操作*/ int partition(int arr[], int low, int hig...原创 2020-08-12 23:23:22 · 266 阅读 · 0 评论 -
LeetCode297:二叉树的序列化与反序列化
实现一个类:public class Codec { // 把一棵二叉树序列化成字符串 public String serialize(TreeNode root) {} // 把字符串反序列化成二叉树 public TreeNode deserialize(String data) {}}比如:serialize方法也许会把它序列化成字符串2,1,#,6,3,#,#,其中#表示null指针,那么把这个字符串再输入deserialize方法...原创 2020-08-12 00:06:27 · 159 阅读 · 0 评论 -
最大矩形、柱状图的最大面积 C++
最大矩形问题分两种:一种是柱状图的面积,一种是给出一个矩阵,找出矩阵(点为1)的最大面积;图形分别如下:后面一种可以转换成各行的柱状图的叠加;柱状图1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 矩阵1、柱状图的最大面积核心思想主要是...原创 2020-07-27 22:51:19 · 670 阅读 · 0 评论 -
KMP算法详细解析(C/C++)
从文本中找出匹配的单词或者字符串,使用kmp算法,效率提升很多,可以防止多次重复比较,浪费时间;前提是需要找到该字符串的公共前后缀,不至于从头比较:具体分析如下:如:T : a a a a a a a a bP : a a a a b找出P的公共前后缀: 0: a 1 : a a 2 : a a a 3 : a a a a : a a a a b //总共五个字符,所以将前面的数组下移: -1 : a 0 : a a 1 : a a a 2 :原创 2020-07-19 12:29:44 · 271 阅读 · 0 评论 -
写链表逆序,两个链表合并成有序链表
struct Node{ int data; Node *next;};typedef struct Node Node;Node *Reverse(Node *head){if(head==NULL||head->next==NULL){ return head;} Node *p1=head;Node *p2=p1->next;Node *p3=p2->...原创 2018-08-30 21:49:15 · 812 阅读 · 0 评论 -
对B树、B+树、的一些认识
1 、为何需要B树 在大规模数据存储中,实现索引查询这样一个实际背景下,树节点存储的元素数量是有限的(如果元素数量非常多的话,查找就退化成节点内部的线性查找了),这样导致二叉查找树结构由于树的深度过大而造成磁盘I/O读写过于频繁,进而导致查询效率低下,那么减少树的深度的一个基本的想法就是:采用多叉树结构。磁盘查找存取的次数往往由树的高度所决定,所以,只要我们通过某种较好的树结构减少...原创 2018-08-24 22:23:31 · 336 阅读 · 0 评论 -
LeetCode 链表翻转(按K个一组) 详解
给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序。示例 :给定这个链表:1->2->3->4->5当 k = 2 时,应当返回: 2->1->4->3->5当 k = 3 时,应当返回: 3->2->...原创 2018-09-02 17:09:27 · 3915 阅读 · 0 评论 -
Python中的数组整合分隔
先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python。最好就是一句python,对应写一句R。python中的numpy模块相当于R中的matirx矩阵格式,化为矩阵,很多内容就有矩阵的属性,可以方便计算。以下符号:=R=代表着在R中代码是怎么样的。array模块定义了一种序列数据结构,看起来和list很相似,但是所有...原创 2020-05-20 23:27:55 · 1192 阅读 · 0 评论