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

网站编程语言郑州一凡网站建设

网站编程语言,郑州一凡网站建设,个人网站如何进行网络推广,linux wordpress 伪静态系列博客目录 文章目录 系列博客目录88. 合并两个有序数组 简单示例 1:示例 2:示例 3:提示:问题: 88. 合并两个有序数组 简单 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2#xff0c;另有两个整数 m 和 n#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你…系列博客目录 文章目录 系列博客目录88. 合并两个有序数组 简单示例 1:示例 2:示例 3:提示:问题: 88. 合并两个有序数组 简单 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2另有两个整数 m 和 n分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中使合并后的数组同样按 非递减顺序 排列。 注意最终合并后数组不应由函数返回而是存储在数组 nums1 中。 为了应对这种情况nums1 的初始长度为 m n其中前 m 个元素表示应合并的元素后 n 个元素为 0默认忽略。 示例 1: 输入: nums1 [1,2,3,0,0,0], m 3, nums2 [2,5,6], n 3 输出: [1,2,2,3,5,6] 解释: 需要合并 [1,2,3] 和 [2,5,6] 。 合并结果是 [1,2,2,3,5,6]其中斜体加粗标注的是 nums1 中的元素。 示例 2: 输入: nums1 [1], m 1, nums2 [], n 0 输出: [1] 解释: 需要合并 [1] 和 [] 。 合并结果是 [1] 。 示例 3: 输入: nums1 [0], m 0, nums2 [1], n 1 输出: [1] 解释: 由于 m 0所以 nums1 中没有元素。 需要合并的数组仅为 nums2 。 结果是 [1]nums1 中的 0 仅仅是为了确保合并结果可以顺利存放到 nums1 中。 提示: nums1.length m nnums2.length n0 m, n 2001 m n 200-10^9 nums1[i], nums2[j] 10^9 问题: 你可以设计一个时间复杂度为 O(m n) 的算法解决此问题吗 我的思路是先判断特殊情况然后先把nums1中的小于nums2[0]的放入最后结果数组result中再用双指针。 class Solution {public void merge(int[] nums1, int m, int[] nums2, int n) {int[] result new int[nums1.length1];Arrays.fill(result, 0);int index 0;int index_nums2 0;int index_nums1 0;if(n 0){return;}if(m0){for (int i 0; i nums2.length; i) {nums1[i]nums2[i];}return;}//下面这个while循环之后发现没必要while(nums1[index_nums1]nums2[index_nums2]){result[index]nums1[index_nums1];if(index_nums1m){for(int l index_nums2;lnums2.length;l){result[index]nums2[index_nums2];}for (int i 0; i nums1.length; i) {nums1[i]result[i];}return;}index_nums1;index;}while(index_nums1m||index_nums2n){while(nums1[index_nums1]nums2[index_nums2]){result[index]nums1[index_nums1];if(index_nums1m){for(int l index_nums2;ln;l){result[index]nums2[index_nums2];}for (int i 0; i nums1.length; i) {nums1[i]result[i];}return;}}while(nums2[index_nums2]nums1[index_nums1]){result[index]nums2[index_nums2];if(index_nums2n){for(int l index_nums1;lm;l){result[index]nums1[index_nums1];}for (int i 0; i nums1.length; i) {nums1[i]result[i];}return;}}}} }后来发现其中一段代码没有必要也就是不用先把nums1中的小于nums2[0]的放入最后结果数组result中再用双指针可以直接使用双指针。 class Solution {public void merge(int[] nums1, int m, int[] nums2, int n) {int[] result new int[nums1.length1];Arrays.fill(result, 0);int index 0;int index_nums2 0;int index_nums1 0;if(n 0){return;}if(m0){for (int i 0; i nums2.length; i) {nums1[i]nums2[i];}return;}while(index_nums1m||index_nums2n){while(nums1[index_nums1]nums2[index_nums2]){result[index]nums1[index_nums1];if(index_nums1m){//判断特殊即nums1数组已经处理完毕只省下nums2数组for(int l index_nums2;ln;l){result[index]nums2[index_nums2];}for (int i 0; i nums1.length; i) {//整理结果nums1[i]result[i];}return;}}while(nums2[index_nums2]nums1[index_nums1]){result[index]nums2[index_nums2];if(index_nums2n){for(int l index_nums1;lm;l){result[index]nums1[index_nums1];}for (int i 0; i nums1.length; i) {//整理结果nums1[i]result[i];}return;}}}} }官网的双指针自己的麻烦地方在于没有想到用一个while循环即可实现自己想的是判断完了该取哪个数组的值后在数组中用while连续取值但是应该是一个while在这个while里面觉得从哪个数组取值自己的思路和官方的思路顺序相反。 class Solution {public void merge(int[] nums1, int m, int[] nums2, int n) {int p1 0, p2 0;int[] sorted new int[m n];int cur;while (p1 m || p2 n) {if (p1 m) {cur nums2[p2];} else if (p2 n) {cur nums1[p1];} else if (nums1[p1] nums2[p2]) {cur nums1[p1];} else {cur nums2[p2];}sorted[p1 p2 - 1] cur;}for (int i 0; i ! m n; i) {nums1[i] sorted[i];}} }作者力扣官方题解 链接https://leetcode.cn/problems/merge-sorted-array/solutions/666608/he-bing-liang-ge-you-xu-shu-zu-by-leetco-rrb0/ 来源力扣LeetCode 著作权归作者所有。商业转载请联系作者获得授权非商业转载请注明出处。复杂度分析 时间复杂度: (O(m n))。 指针移动单调递增最多移动 (m n) 次因此时间复杂度为 (O(m n))。 空间复杂度: (O(m n))。 需要建立长度为 (m n) 的中间数组 sorted。
http://www.hkea.cn/news/14439757/

相关文章:

  • django和wordpress东莞网站快速排名优化
  • 中国营销传播网官网哈尔滨seo排名优化免费咨询
  • 电脑网站做淘宝客html5网页开发工具
  • 青岛在线制作网站公司做的网站访问很慢
  • 济源建设网站的公司温州网站设计联系亿企邦
  • 个人站长做什么网站好珠海网站网站建设
  • 百度网站建设需要钱照片书那个网站做的好
  • 网站的建设的含义学做网网站论坛
  • 保定网站制作计划怎么做外汇返佣的网站
  • 福州网站建设专业公司h5做怎么做微网站
  • Wordpress微支付谷歌外贸网站seo怎么做
  • 哪些是 joomla做的网站电商网站的付款功能
  • 北京seo网站创建外卖平台
  • 凯里网站建设哪家专业wordpress多用户图库
  • wordpress页面不留边潍坊seo推广
  • 做网站选哪家江苏建筑培训网
  • 门户网站建设工作流程网站开发用到的编程
  • 建网站空间的详细说明品牌推广计划
  • 中信建设有限责任公司官方网站有什么做第二职业的网站吗
  • 网站编程语言排行榜企业网站做百度小程序
  • 广州网站建设平台邯郸网络运营中心电话
  • 东莞做网站公司在哪泉州seo优化排名公司
  • 住房和城乡建设部网站主页博乐建设工程信息网站
  • 网站建设前期策划方案学校网站建设的意义和目的
  • 做微信的微网站费用多少做网站横幅的图片多大
  • 购物网站哪个是正品网页传奇排名
  • 网站备案后打不开腾讯企业邮箱登录入口电脑版
  • 在国际网站做外贸需要条件做报名链接的网站
  • 南京网站开发价格phpcms模板行业网站
  • 表格模板网站永州网站开发