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

旅行网站定制公司网站开发应该学哪门语言

旅行网站定制公司,网站开发应该学哪门语言,网上做流量对网站有什么影响吗,跨境电商网站建设主管岗位职责本文属于「征服LeetCode」系列文章之一#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁#xff0c;本系列将至少持续到刷完所有无锁题之日为止#xff1b;由于LeetCode还在不断地创建新题#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章… 本文属于「征服LeetCode」系列文章之一这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁本系列将至少持续到刷完所有无锁题之日为止由于LeetCode还在不断地创建新题本系列的终止日期可能是永远。在这一系列刷题文章中我不仅会讲解多种解题思路及其优化还会用多种编程语言实现题解涉及到通用解法时更将归纳总结出相应的算法模板。 为了方便在PC上运行调试、分享代码文件我还建立了相关的仓库。在这一仓库中你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解还可以一同分享给他人。 由于本系列文章的内容随时可能发生更新变动欢迎关注和收藏征服LeetCode系列文章目录一文以作备忘。 给你一个非空数组返回此数组中 第三大的数 。如果不存在则返回数组中最大的数。 示例 1 输入[3, 2, 1] 输出1 解释第三大的数是 1 。示例 2 输入[1, 2] 输出2 解释第三大的数不存在, 所以返回最大的数 2 。示例 3 输入[2, 2, 3, 1] 输出1 解释注意要求返回第三大的数是指在所有不同数字中排第三大的数。 此例中存在两个值为 2 的数它们都排第二。在所有不同数字中排第三大的数为 1 。提示 1 nums.length 10^4-2^31 nums[i] 2^31 - 1 进阶 你能设计一个时间复杂度 O(n) 的解决方案吗 解法 遍历 思路先去重复再排序的做法/用堆的方法都是 n log ⁡ n n\log n nlogn 级别的因此不考虑。下面是我第一次做的方法。先循环找出第一大(最大)的数再找出第二大的数再循环找出第三大的数 O ( 3 n ) O(3n) O(3n) 的复杂度。 class Solution { public:int thirdMax(vectorint nums) {long firMax LONG_MIN, secMax LONG_MIN, thiMax LONG_MIN;for (int i 0; i nums.size(); i) if (nums[i] firMax) firMax nums[i]; for (int i 0; i nums.size(); i) if (nums[i] secMax nums[i] firMax) secMax nums[i];for (int i 0; i nums.size(); i) if (nums[i] thiMax nums[i] secMax) thiMax nums[i]; if (thiMax LONG_MIN) return firMax;return thiMax;} };然后其实可以合成一个循环。像是冒泡或者是单调队列用 a , b , c a, b,c a,b,c 分别表示最大值次大值和第三大的数。 如果当前元素比 a a a 大则说明其一定比 b b b 和 c c c 都大。 我们同时更新 b b b 和 c c c 的值。 具体来说就是将 b b b 更新到 c c c a a a 更新到 b b b 可以形象地考虑成是把元素往后挤出去。否则我们继续判断是否比 b b b 大如果比 b b b 大那么肯定也比 c c c 大我们同时需要更新 c c c 的值。如果都不比 a a a 和 b b b 大我们继续判断是否比 c c c 大如果是我们更新c的值。 我们初始化 a , b , c a,b,c a,b,c 为 负无穷LONG_MIN。 这样我们最后只要判断 c c c 是不是负无穷即可如果是负无穷我们返回 a a a 否则我们返回 c c c 。 class Solution { public:int thirdMax(vectorint nums) { long a LONG_MIN, b LONG_MIN, c LONG_MIN; for (int num : nums) {if (num a) {c b; b a; a num;} else if (num b num a) {c b; b num;} else if (num c num b) {c num;}}return (c LONG_MIN) ? a : c;} };另一种不依赖元素范围的做法是将 a a a 、 b b b 和 c c c 初始化为空指针或空对象视作「无穷小」并在比较大小前先判断是否为空指针或空对象。遍历结束后若 c c c 为空则说明第三大的数不存在返回 a a a 否则返回 c c c 。 class Solution { public:int thirdMax(vectorint nums) {int *a nullptr, *b nullptr, *c nullptr;for (int num : nums) {if (a nullptr || num *a) {c b;b a;a num;} else if (*a num (b nullptr || num *b)) {c b;b num;} else if (b ! nullptr *b num (c nullptr || num *c)) {c num;}}return c nullptr ? *a : *c;} };复杂度分析 时间复杂度 O ( n ) O(n) O(n) 其中 n n n 是数组 nums \textit{nums} nums 的长度。空间复杂度 O ( 1 ) O(1) O(1) 。
http://www.huolong8.cn/news/49435/

相关文章:

  • 阿里云 oss做网站线上平台名称大全
  • 做网站软件下载软件公司 网站模板
  • 宿州做企业网站公司seo线下培训机构
  • seo对企业网站运营有何意义百度商家平台
  • 甘肃省建设工程168网站新闻发稿渠道
  • 阿里云clouder网站建设恩施兴州建设工程责任有限公司网站
  • 电视直播网站开发怎么做网站在线玩游戏
  • 上海企业网站制作费用做网站怎么收费的
  • 西安网站seo技术厂家各大网站rss订阅源地址
  • 罗村建网站建设网站过水
  • 针对不同网站的cdn加速wordpress支付宝付费
  • 建设网站成本预算企业门户网站需求文档
  • 一个虚拟主机能安装2个网站吗简述新建站点的步骤
  • 个人网站效果图网站建设厘金手指排名十九
  • 新余网站开发阿里云域名注册步骤
  • 长沙建网站理国内 上市网站建设公司
  • 类似头条的网站怎么做网站做关键词库的作用
  • 网站建立方案天津建设工程信息网公布
  • 南昌网站建设设计住房城乡建设部官网站
  • 网站素材网龙岩兼职招聘最新发布
  • 网站商城建设方式做报名链接的网站
  • 初创公司 建网站做矿产公司的网站
  • 海南省建设培训网站报名好网站用户体验
  • 网站建设电话销售技巧沧州全网推网络科技有限公司
  • 上海网站建设-新闻动态南宁工程建设网站有哪些
  • 建站语言门户网站流程图
  • 网站后台报表统计系统Wordpress编辑工具
  • 潍坊做网站公司找外国女朋友的网站建设
  • 网站ie兼容性网站建设 虚拟化
  • 网站建设后台 手工上传网站制作与建设