摘要:
原题在此处 解题思路 这道题的原题大致意思可以看上面链接,有一种做法是逆向思维,也就是,只能从首部或者尾部取一个数字,那么剩下的部分肯定是连续的,假设数组长度为n,要取的数字的个数为k,也就是求数组中 n-k个连续子数组的最小值,用总和减去最小值就可以得到最终的答案 原题逆向思维解法代码 class 阅读全文
posted @ 2026-03-04 23:58
Time_q
阅读(1)
评论(0)
推荐(0)
摘要:
include<bits/stdc++.h> using namespace std; template int Partition(T a[],int low,int height){ T pivot=a[low];//这个要用T,因为你不知道这个是什么类型的数据 while(low<height 阅读全文
posted @ 2026-03-04 21:07
Time_q
阅读(3)
评论(0)
推荐(0)
摘要:
快速排序优化:随机化基准值避免复杂度退化 为什么需要随机化选取基准值? 选第一个元素作为基准:升序/降序数组会让快排复杂度退化为 O(n²) 选中间元素作为基准:存在 "Anti-QuickSort" 恶意数据,同样会退化为 O(n²) 随机化基准:从根本上避免被构造的数据 Hack,保证平均 O( 阅读全文
posted @ 2026-03-04 20:40
Time_q
阅读(4)
评论(0)
推荐(0)

浙公网安备 33010602011771号