【优选算法】——分治-快速&归并排序!

   日期:2024-12-30     作者:o93v3       评论:0    移动:http://w.yusign.com/mobile/news/8516.html
核心提示:目录 1、颜色分类  2、快速排序 3、数组中的第K个最大元素 4、库存管理III 5、排序数组 6、交易逆序对的总数 7、计算右侧小于当

目录

1、颜色分类

 2、快速排序

3、数组中的第K个最大元素

4、库存管理III

5、排序数组

6、交易逆序对的总数

7、计算右侧小于当前元素的个数

8、翻转对


【优选算法】——分治-快速&归并排序!

给定一个包含红色、白色和蓝色、共  个元素的数组  原地 对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。

我们使用整数 、  和  分别表示红色、白色和蓝色。

必须在不使用库内置的 sort 函数的情况下解决这个问题。

示例 1

输入nums = [2,0,2,1,1,0]
输出[0,0,1,1,2,2]

示例 2

输入nums = [2,0,1]
输出[0,1,2]
 
 

给你一个整数数组 ,请你将该数组升序排列。

你必须在 不使用任何内置函数 的情况下解决问题,时间复杂度为 ,并且空间复杂度尽可能小。

示例 1

输入nums = [5,2,3,1]
输出[1,2,3,5]

示例 2

输入nums = [5,1,1,2,0,0]
输出[0,0,1,1,2,5]
 
 

给定整数数组  和整数 ,请返回数组中第  个最大的元素。

请注意,你需要找的是数组排序后的第  个最大的元素,而不是第  个不同的元素。

你必须设计并实现时间复杂度为  的算法解决此问题。

示例 1:

输入:  k = 2
输出: 5

示例 2:

输入: k = 4
输出: 4
 
 

仓库管理员以数组  形式记录商品库存表,其中  表示对应商品库存余量。请返回库存余量最少的  个商品余量,返回 顺序不限

示例 1

输入stock = [2,5,7,4], cnt = 1
输出[2]

示例 2

输入stock = [0,2,3,6], cnt = 2
输出[0,2] 或 [2,0]
 
 

给你一个整数数组 ,请你将该数组升序排列。

你必须在 不使用任何内置函数 的情况下解决问题,时间复杂度为 ,并且空间复杂度尽可能小。

示例 1

输入nums = [5,2,3,1]
输出[1,2,3,5]

示例 2

输入nums = [5,1,1,2,0,0]
输出[0,0,1,1,2,5]
 
 

在股票交易中,如果前一天的股价高于后一天的股价,则可以认为存在一个「交易逆序对」。请设计一个程序,输入一段时间内的股票交易记录 ,返回其中存在的「交易逆序对」总数。

示例 1:

输入record = [9, 7, 5, 4, 6]
输出8
解释交易中的逆序对为 (9, 7), (9, 5), (9, 4), (9, 6), (7, 5), (7, 4), (7, 6), (5, 4)。
 
 

给你一个整数数组  ,按要求返回一个新数组  。数组  有该性质:  的值是   右侧小于  的元素的数量。

示例 1

输入nums = [5,2,6,1]
输出
5 的右侧有 2 个更小的元素 (2 和 1)
2 的右侧仅有 1 个更小的元素 (1)
6 的右侧有 1 个更小的元素 (1)
1 的右侧有 0 个更小的元素

示例 2

输入nums = [-1]
输出[0]

示例 3

输入nums = [-1,-1]
输出[0,0]
 
 

给定一个数组  ,如果  且  我们就将  称作一个重要翻转对

你需要返回给定数组中的重要翻转对的数量。

示例 1:

输入: [1,3,2,3,1]
输出: 2

示例 2:

输入: [2,4,3,5,1]
输出: 3
     本文地址:http://w.yusign.com/news/8516.html    述古往 http://w.yusign.com/static/ , 查看更多
 
特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

举报收藏 0打赏 0评论 0
 
更多>同类资讯
0相关评论

相关文章
最新文章
推荐文章
推荐图文
资讯
点击排行
{
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  版权声明  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号