随笔分类 - 数据结构与算法
快速排序
摘要:在从小往大排的前提下,如果以左边为基数的话必须在比左边小的地方让两个指针相遇,因为在相遇时必须将相遇时候的数和基数交换,将相遇的数放在基数的位置,也就是小于基数的区域。 因此如果以左边为基数的话必须右指针先动,如果以右边为基数的话必须左指针先动。 图解快速排序(C++实现)_快速排序c++实现_Ma
阅读全文
(根据二叉树总结)递归条款1~程序和递归函数的位置关系
摘要:2全局变量的作用 https://leetcode.cn/problems/minimum-absolute-difference-in-bst/ 以二叉树最小绝对值差为例: 如果将pre=cur;这句话写在所有递归函数之前(一般终止条件为第一行代码)作用不大 1 class Solution {
阅读全文
单链表程序(模板实现)
摘要:本程序无法实现的功能就是想要头结点的数据域和其他结点的数据域类型不同,由于使用模板如果在构造函数的时候设置头结点的数据域类型,那么实例化的时候(LinkList<int>link;)其他结点数据域也要跟着变成整型,如果将头结点在构造函数中提前定义好(ListNode<int>*L=new ListN
阅读全文
单链表
摘要:结构体 结构体的首地址即为结构体第一个成员的地址,如果结构体的第一个成员是数组,则结构体的地址也是数组中第一个成员的地址 链表的基础知识 顺序表(比如说数组)各元素的地址是连续的。 数组存储在栈区,而链表存储在堆区。 图中指针也称为链,指针的类型就是结构体的名字,比如结构体的名字是student那么
阅读全文