期望个数统计(二)

解决方案

对于一个排好序的序列,对相同的数字随机打乱顺序后期望有多少个数字保持原位置不变。

题解

经过分析,我们发现不同能力值的简历是不会互相影响的,所以问题可以简化为有一个长度为n的数组,将里面的元素按照全排列随机排序后,问有多少个元素还在原位。

方法一:

排序 + 除重

C++ 实现

复制代码
class Solution {
public:
    int expectNumber(vector<int>& scores) {
        sort(scores.begin(), scores.end());
        return unique(scores.begin(), scores.end()) - scores.begin();
    }
};

复杂度分析

相关推荐
业精于勤的牙2 小时前
小张刷题计划(二)
数据结构·算法
hans汉斯2 小时前
【人工智能与机器人研究】人工智能算法伦理风险的适应性治理研究——基于浙江实践与欧美经验的整合框架
大数据·人工智能·算法·机器人·数据安全·算法伦理·制度保障
CoderYanger2 小时前
动态规划算法-两个数组的dp(含字符串数组):42.不相交的线
java·算法·leetcode·动态规划·1024程序员节
南莺莺3 小时前
二叉排序树的创建和基本操作---C++实现
数据结构·c++·算法··二叉排序树
仰泳的熊猫3 小时前
1061 Dating
数据结构·c++·算法·pat考试
CoderYanger3 小时前
A.每日一题——1523. 在区间范围内统计奇数数目
java·数据结构·算法·leetcode·职场和发展
surtr13 小时前
Round 1019(div2) CD
数据结构·c++·算法·贪心算法·stl
Hcoco_me3 小时前
大模型面试题14:K-means聚类算法全解析(通用场景+深度拓展)
算法·kmeans·聚类
Jay20021113 小时前
【机器学习】30 基于内容的过滤算法
人工智能·算法·机器学习