LetCode算法题

news/2024/10/23 9:31:40/

注:大佬解答来自LetCode官方题解

88.合并两个有序数组

1.题目

2.个人解答

var merge = function (nums1, m, nums2, n) {//合并for (let i = 0; i < n; i++) {nums1[i + m] = nums2[i];}// 排序(冒泡排序)for (let i = 0; i < m + n; i++) {for (let j = 0; j < m + n - i - 1; j++) {if (nums1[j] > nums1[j + 1]) {[nums1[j], nums1[j + 1]] = [nums1[j + 1], nums1[j]];}}}
};

3.大佬解答

var merge = function (nums1, m, nums2, n) {nums1.splice(m, nums1.length - m, ...nums2);nums1.sort((a, b) => a - b);
};

27.移除元素

1.题目

 2.个人解答

var removeElement = function (nums, val) {function remove(nums, i, val) {if (nums[i] == val) {nums.splice(i, 1);remove(nums, i, val);}}for (let i = 0; i < nums.length; i++) {remove(nums, i, val);}
};

3.大佬解答

var removeElement = function(nums, val) {const n = nums.length;let left = 0;for (let right = 0; right < n; right++) {if (nums[right] !== val) {nums[left] = nums[right];left++;}}return left;
};

 

26.删除有序数组的重复项

1.题目

 2.个人解答

var removeDuplicates = function (nums) {const res = [];for (let i = 0; i < nums.length; i++) {const item = nums[i];let isDuplicate = false;for (let j = 0; j < res.length; j++) {if (item === res[j]) {isDuplicate = true;break;}}if (!isDuplicate) {res.push(item);}}nums.length = res.length;for (let index = 0; index < nums.length; index++) {nums[index] = res[index];}
};

3.大佬解答

var removeDuplicates = function(nums) {const n = nums.length;if (n === 0) {return 0;}let fast = 1, slow = 1;while (fast < n) {if (nums[fast] !== nums[fast - 1]) {nums[slow] = nums[fast];++slow;}++fast;}return slow;
};


http://www.ppmy.cn/news/1126695.html

相关文章

git 查看当前版本号

你看&#xff0c;那个人好像一条狗哎。 ——周星驰 《大话西游》 要查看当前 Git 仓库的版本号&#xff0c;您可以使用以下命令&#xff1a; git log --oneline -n 1 这会显示最近一次的提交信息&#xff0c;包括提交的哈希值&#xff08;版本号&#xff09;和提交的摘要信息…

进程、线程、协程相关知识积累

1.进程、线程、协程的区别 &#xff08;1&#xff09;进程是程序一次动态执行的过程&#xff0c;是程序运行的基本单位。操作系统会以进程为单位&#xff0c;分配系统资源&#xff08;CPU时间片、内存等资源&#xff09;&#xff0c;进程是资源分配的最小单位。 进程占据独立…

Java Matcher对象中 find() 与 matches() 的区别

find()&#xff1a;字符串某个部分匹配上正则表达式就会返回true matches()&#xff1a;整个字符串都匹配上正则表达式才返回true&#xff0c;否则false 参考&#xff1a;Java Matcher对象中find()与matches()的区别 参考&#xff1a;Pattern隐藏了哪些Java8追加的新功能 参考&…

k8s 自动扩缩容HPA原理及adapter配置详解

大家好&#xff0c;我是蓝胖子&#xff0c;都知道&#xff0c;k8s拥有自动扩缩容机制HPA&#xff0c;我们能够通过配置针对不同的扩缩容场景进行自动扩缩容&#xff0c;往往初学者在面对其中繁多配置的时候会学了又忘记&#xff0c;今天我将会以一种不同的视角&#xff0c;结合…

《安富莱嵌入式周报》第323期:NASA开源二代星球探索小车, Matlab2023b,蓝牙照明标准NLC, Xilinx发布电机套件,Clang V17发布

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版&#xff1a; https://www.bilibili.com/video/BV1vp4y1F7qD 《安富莱嵌入式周报》第323期&#xff1a;NASA开源…

字符编码个人理解

总结&#xff1a;ASCII码只占一个字节&#xff0c;不包含汉字&#xff1b;GBK汉字国标扩展码&#xff0c;就是所谓的中国码&#xff0c;兼容ASCII码&#xff0c;汉字包含两个字节&#xff1b;Unicode万国码&#xff0c;兼容所有国家文字&#xff1b;UTF-32,所有字符都占4个字节…

记一次 .NET 某拍摄监控软件 卡死分析

一&#xff1a;背景 1. 讲故事 今天本来想写一篇 非托管泄露 的生产事故分析&#xff0c;但想着昨天就上了一篇非托管文章&#xff0c;连着写也没什么意思&#xff0c;换个口味吧&#xff0c;刚好前些天有位朋友也找到我&#xff0c;说他们的拍摄监控软件卡死了&#xff0c;让…

L1-033 出生年 c++解法

一、题目再现 以上是新浪微博中一奇葩贴&#xff1a;“我出生于1988年&#xff0c;直到25岁才遇到4个数字都不相同的年份。”也就是说&#xff0c;直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求&#xff0c;自动填充“我出生于y年&#xff0c;直到x岁才遇到n个…