【问题描写叙述】

Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.

Note:

You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2. The number of elements initialized in nums1and nums2 are m and n respectively.

1.【基础知识】

归并排序思想

常见的排序主要有两种,一种是先把待排序的序列一次切割。使子序列的长度减小至1,然后。再合并。第二种是把待排序两两分组排序然后合并。

堆排序思想

详见:数据结构基础
排序 之 二叉堆实现堆排序

详址:http://blog.csdn.net/u013630349/article/details/46906969

2.【屌丝源代码】

未能给出完整实现!

class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n)
{
if (nums1.empty())
{
nums1 = nums2;
return;
}
if (nums2.empty()) return ;
qkst(nums1);
qkst(nums2);
vector<int> myvec;
int k=0,j=0;
for(int i=0;i<nums2.size()+nums1.size();i++)
{
// 一方耗尽怎么办
if(k>=nums2.size())
{
for
nums1 = myvec;
return ;
}
if(j>=nums1.size())
{
for
nums1 = myvec;
return ;
}
if(nums1[j]>=nums2[k])
{
myvec.push_back(nums2[k]);
k++;
}
else
{
myvec.push_back(nums1[j]);
++j;
} }
nums1 = myvec;
return ;
}
int pivot(int low,int high,vector<int> &vec)
{
return 0;
}
void qkst(vector<int> &vec)
{ }
};

3.【AC源代码】

class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int ia = m - 1, ib = n - 1, icur = m + n - 1;
while(ia >= 0 && ib >= 0) {
nums1[icur--] = nums1[ia] >= nums2[ib] ? nums1[ia--] : nums2[ib--];
}
while(ib >= 0) {
nums1[icur--] = nums2[ib--];
}
}
};

4.【算法思想】

1)遇到插入操作,最好用空间复杂度来解决时间复杂度问题;

2)插入操作,事实上操作为尾操作比为首操作的要简单、直接。

3)简单问题复杂化是最不值得的。目标为导向,干出来了,有了结果再说别的!

4)卡壳地方:a.审题;b.概念混淆;c.结果导向不明。

LeetCode 之 Merge Sorted Array(排序)的更多相关文章

  1. [LeetCode] 88. Merge Sorted Array 混合插入有序数组

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...

  2. Leetcode#88. Merge Sorted Array(合并两个有序数组)

    题目描述 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分别为 m ...

  3. leetCode 88.Merge Sorted Array (合并排序数组) 解题思路和方法

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: Y ...

  4. LeetCode 88 Merge Sorted Array

    Problem: Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array ...

  5. LeetCode 88. Merge Sorted Array(合并有序数组)

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...

  6. [leetcode] 12. Merge Sorted Array

    这道题的无聊之处在于题目其实给了一些很奇怪的测试用例.比如他会给一些空的数组来,但是这个是不科学的,因为在C++中不允许定义一个空的列表,我们用的又不是那种糙又快的python,所以在这里我遇到了一些 ...

  7. [LeetCode] 88. Merge Sorted Array 合并有序数组

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...

  8. 【leetcode】Merge Sorted Array

    题目描述 Given two sorted integer arrays A and B, merge B into A as one sorted array. Note: You may assu ...

  9. 【题解】【数组】【Leetcode】Merge Sorted Array

    Given two sorted integer arrays A and B, merge B into A as one sorted array. Note: You may assume th ...

随机推荐

  1. 【codeforces 810C】Do you want a date?

    [题目链接]:http://codeforces.com/contest/810/problem/C [题意] 给你一个集合,它包含a[1],a[2]..a[n]这n个整数 让你求出这个集合的所有子集 ...

  2. ZJOI—— 密码机(2003)

    ZJOI2003密码机,没找到可以测试的网站,就只过了样例~~ 题目描述 一台密码机按照以下的方式产生密码:首先往机器中输入一系列数,然后取出其中一部分数,将它们异或以后得到一个新数作为密码.现在请你 ...

  3. Android自己定义矩形及selector、shape的使用

    [声明]转载请注明出处.此文出自指尖飞落的博客:http://blog.csdn.net/huntersnail --每天写一篇博客.每天做一点技术积累! Android自己定义矩形及selector ...

  4. Linux xhost命令详解

    xhost 命令用途 控制什么人可以访问当前主机上的增强 X-Windows. 语法 xhost [ + | - ] [ Name ] "+"表示增加,"-"表 ...

  5. linux系统定时任务crond入门

    1,Crond: Crond是linux系统中用来定期执行命令或指定程序任务的一种服务或者软件.(Centos5以后默认存在) 当优化开机自启动的时候,第一个就是crond. Crond服务默认情况( ...

  6. kafka的使用

    kafka基于zookeeper. 需要安装kafka.zookeeper. 安装方法参考:http://tzz6.iteye.com/blog/2401197 启动zookeeper:点击zkSer ...

  7. python 3.x 学习笔记8 (os模块及xml修改)

    1.os模块操作 os.getcwd():                                       # 查看当前所在路径. os.listdir(path):            ...

  8. 爬取xml数据之R

    生物信息很多时候要爬数据.最近也看了一些这些方面的. url<-"要爬取的网址" url.html<-htmlParse(url,encoding="UTF- ...

  9. win10+ubuntu的坑

    最近几天考虑了诸多,包括分区大小,使用烧写工具等等. 但是实际动手还是遇到了彩蛋.rufus是知乎的大神推荐的,因为UUI貌似有些版本安装时候有些问题. 而rufus的界面有诸多选项.ubuntu的图 ...

  10. 解决IE下的li中img多余4px的问题--IE6有的问题

    为了对比明显,这里用img标签占位,但是背景用纯黑色 <ul> <li> <img src="" alt="" />< ...