当前位置: 首页 > news >正文

hello算法_C++_ 最差、最佳、平均时间复杂度

算法的时间效率往往不是固定的,而是与输入数据的分布有关。假设输入一个长度为  的数组 nums ,其中 nums 由从  1 至  n 的数字组成,每个数字只出现一次;但元素顺序是随机打乱的,任务目标是返回元素  的索引。我们可以得出以下结论。

#include <iostream>
#include <vector>
#include <algorithm>
#include <chrono>
#include <random>using namespace std;// 生成数组 {1, 2, ..., n} 并随机打乱
vector<int> randomNumbers(int n) {vector<int> nums(n);for (int i = 0; i < n; i++) {nums[i] = i + 1;}unsigned seed = chrono::system_clock::now().time_since_epoch().count();shuffle(nums.begin(), nums.end(), default_random_engine(seed));return nums;
}// 查找数字 1 在数组中的索引
int findOne(vector<int> &nums) {for (int i = 0; i < nums.size(); i++) {if (nums[i] == 1)return i;// cout << i << endl; // 可以根据需要输出,调试用}return -1;
}int main() {int n = 10; // 你可以修改 n 的值vector<int> arr = randomNumbers(n);// 输出数组内容cout << "打乱的数组:";for (int num : arr) {cout << num << " ";}cout << endl;int index = findOne(arr);if (index != -1) {cout << "元素 1 在数组中的索引是:" << index << endl;} else {cout << "数组中没有元素 1" << endl;}return 0;
}

http://www.dtcms.com/a/263824.html

相关文章:

  • Spring事务传播行为?失效情况?(详解)
  • 设计模式精讲 Day 20:状态模式(State Pattern)
  • imx6ull芯片中断机制6.24-6.25
  • Python中字符串isalpha()函数详解
  • 设计模式-责任链, 责任链+ 模板方法模式相结合
  • 抽奖概率-数值练习题
  • AR衍射光波导设计遇瓶颈,OAS 光学软件来破局
  • 【Golang面试题】Go结构体的特点,与其它语言的区别
  • 学习昇腾开发的第11天--主要接口调用流程
  • 逐步构建高性能http服务器及聊天室服务器
  • 青否数字人直播再创新纪录!“人工智能+消费”开新篇?zhibo175
  • ABB CH-3185 3 bhl 000986 p 1006 ab ability 800 xa自动化系统
  • 【V6.0 - 听觉篇】当AI学会“听”:用声音特征捕捉视频的“情绪爽点”
  • 【开源项目】一款真正可修改视频MD5工具视频质量不损失
  • 【第二章:机器学习与神经网络概述】04.回归算法理论与实践 -(3)决策树回归模型(Decision Tree Regression)
  • UE5.6 官方文档笔记 [1]——虚幻编辑器界面
  • Python 单例模式与魔法方法:深度解析与实践应用
  • MySQL允许root用户远程连接
  • PDFBox + Tess4J 从PDF中提取图片OCR识别文字
  • 探秘阿里云Alibaba Cloud Linux:云时代的操作系统新宠
  • C语言学习笔记:深入解析结构体数组(附代码实践)
  • Qt QTableWidget多行多列复制粘贴
  • Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
  • 安全左移(Shift Left Security):软件安全的演进之路
  • Spring Boot 2 多模块项目中配置文件的加载顺序
  • 智能交通信号灯
  • Django打造智能Web机器人控制平台
  • HarmonyOS应用开发高级认证知识点梳理 (三)状态管理V2装饰器核心规则
  • android车载开发之HVAC
  • 笔记本电脑怎样投屏到客厅的大电视?怎样避免将电脑全部画面都投出去?