分治
文章平均质量分 52
二分算法和非等分分治
一个有思想的逗号
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PAT 1010 Radix
1010 Radix分数 25作者 CHEN, Yue单位 浙江大学yes。原创 2025-09-16 15:35:57 · 921 阅读 · 0 评论 -
分糖果(相等分配)
分给每个人糖果的数量必须是相等的,并且每个人只能选择一种糖果。也就是说,可以把一种糖果分给多个人,但是一个人的糖果不能有多种。请问每个人最多能分到几个糖果?种不同口味的糖果,第。,现在需要把糖果分给。原创 2024-11-15 00:00:00 · 539 阅读 · 0 评论 -
派(分治法)
个朋友会来参加我的派对,每个人会拿到一块派(必须一个派的一块,不能由几个派的小块拼成;我的朋友们都特别小气,如果有人拿到更大的一块,就会开始抱怨。因此所有人拿到的派是同样大小的(但不需要是同样形状的),虽然这样有些派会被浪费,但总比搞砸整个派对好。当然,我也要给自己留一块,而这一块也要和其他人的同样大小。蒜头君的生日要到了!输出每个人能得到的最大的派的体积,精确到小数点后三位。之间的整数,表示每个派的半径。,表示派的数量和朋友的数量。个不同口味、不同大小的派。,半径不等的圆柱体。第一行包含两个正整数。原创 2024-11-08 19:24:50 · 712 阅读 · 0 评论 -
找众数(可能有多个)
使用分治法找出所有的众数,首先将输入元素从小到大进行排序,然后找到与a[mid]相等的数的范围a[mid_l..mid_r]。如果l~mid_l的长度大于等于mid_l~mid_r的长度,需要在l~mid_l范围内继续找,如果mid_r~r的长度大于等于mid_l~mid_r的长度,需要在mid_r~r中继续找。:使用sort()对输入序列从小到大进行排序,找到与a[mid]相等的数的范围a[mid_l..mid_r],然后进行判断(因为可能有多个众数,所以是。原创 2024-11-04 11:16:18 · 1242 阅读 · 0 评论 -
升序数组两两不相等
复杂度分析:最坏时间复杂度为O(n):可能每次a[mid]都等于mid+1,此时需要遍历整个数组;平均时间复杂度为O(logn):平均情况下,T(n)=T(n/2)+O(1);空间复杂度为O(logn):递归调用的深度为logn。题目:给定一个排好升序的数组A[1],A[2],…一个升序且值都不相等的数组,如果第一个数大于右下标(数组最后一个数的下标),或最后一个数小于左下标,则这个数组里一定没有满足题意的数。复杂度分析:最坏时间复杂度为O(n),平均时间复杂度为O(n);空间复杂度为O(logn)。原创 2024-11-02 20:44:53 · 372 阅读 · 0 评论 -
浮点二分(求一个数的平方根)
问题:求一个浮点数的平方根,要求保留两位小数。原创 2024-03-23 13:01:53 · 252 阅读 · 0 评论 -
二分算法(查找)
mid=(L+R)/ 2 =4,arr[mid]=6 大于4,更新R=mid-1(因为是单调的)mid=(L+R)/ 2 =2,arr[mid]=3 小于4,更新L=mid+1。mid=(L+R)/ 2 =3,arr[mid]=4 等于4,找到了。2、二分查找,时间复杂度为O(logn) 前提:arr一定要单调。L=1,R=8(要查找的数组范围,数组下标从1开始)1、线性查找,一个个地去遍历,时间复杂度为O(n)显然,数字4的下标为3。原创 2024-03-23 09:59:22 · 399 阅读 · 0 评论
分享