- 博客(94)
- 收藏
- 关注
原创 [数据结构] 基于选择的排序 选择排序&&堆排序
(图片来源于网络)由于每次选两个值,当最大值下标就是区间左端点时,由于需要将最小值放在左端点,这样会使当最小值下标与区间左端点begin交换后,判断最大值下标是否指向区间左端点,如果是,则将其修正为交换后的最小值下标的位置。
2024-07-07 12:33:28
578
2
原创 [数据结构] 基于交换的排序 冒泡排序&&快速排序
让右下标先走,向左寻找比key小的值,找到后停下来:停下来后:左下标再向右寻找比key大的值,找到后停下来:此时,交换两个下标对应的值:接下来继续执行上述步骤(R先走),我展示关键步骤:两下标找到要求目标并交换:直到遇到特殊情况:两下标相遇这时停止停止循环,将最左侧元素与相遇处的元素交换位置:即可完成一次二分。
2024-07-06 22:34:06
1146
15
原创 [C++ STL] vector 详解
[C++ STL] vector 详解,变长数组,可变长的顺序表(Dynamic Sequence List),STL(Standard Template Library)
2024-06-16 11:39:17
1058
22
原创 [C++] new && delete 操作符初阶
C++::new&delete操作符初阶——operator new&&operator delete详解
2024-05-30 16:42:41
804
25
原创 [二叉树] 二叉树的前中后三序遍历#知二求一
[二叉树] 二叉树的前中后三序遍历#知二求一:(前+中->后)(前+后->中)(中+后->前)
2024-04-30 22:27:04
1125
23
原创 【leetcode】模拟算法
第⼆行的数是:1,(2row-2)-1,(2row-2)+1,(4row-4)-1,(4row-4)+1;第三行的数是:2,(2row-2)-2,(2row-2)+2,(4row-4)-2,(4row-4)+2;这样我们就直接返回原字符串即可。- 第 2 秒,提莫再次攻击艾希,并重置中毒计时器,艾希中毒状态需要持续 2 秒,即第 2 秒和第 3 秒。- 第 4 秒,提莫再次攻击艾希,艾希中毒状态又持续 2 秒,即第 4 秒和第 5 秒。第四行的数是:3,(2row-2)+3,(4row-4)+3。
2024-04-18 13:04:43
575
10
原创 【leetcode】动态规划::前缀和(二)
动态规划:前缀和。如果你就按照以上思路来建立前缀和数组,然后使用数组时你就会后悔自己做过的事情了:在使用前缀和数组的时候,对于一个指针cur = i,需要向前遍历数组,在cur向后移动后,还要进行向前遍历,这个操作的时间复杂度为O(N^2),再加上建立前缀和数组的O(N),时间复杂度不减反增!暴力求解,按照题目的描述来求解,对于每一个数,依次向后求和,如果和==k,此时不能停下来,ret++继续遍历到整个数组。sum是不断变化的,此时创建一个哈希表,目的是用来记录此时sum的值,在向后遍历时,sum会递增。
2024-04-10 17:48:47
725
3
原创 【leetcode】动态规划::前缀和
dp[x1-1][y1-1]表示以(1,1)为左上角,(x1-1,y1-1)为右下角的子矩阵的和。其中,dp[i-1][j]表示以(1,1)为左上角,(i-1,j)为右下角的子矩阵的和;dp[i][j-1]表示以(1,1)为左上角,(i,j-1)为右下角的子矩阵的和;dp[i-1][j-1]表示以(1,1)为左上角,(i-1,j-1)为右下角的子矩阵的和;A[i][j]表示矩阵A的元素。首先,我们可以定义一个辅助矩阵dp,其中dp[i][j]表示以(1,1)为左上角,(i,j)为右下角的子矩阵的和。
2024-04-07 15:45:17
1132
6
该项目为民航飞机管理系统,通过三个类City,Map,Plane三个类之间的交互来模拟实现现实中的民航飞机管理系统
2024-06-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人