文档章节

给定两个排序后的数组A和B,其中A的末端有足够的缓冲空间容纳B。将B合并入A并排序

一贱书生
 一贱书生
发布于 2016/11/23 09:09
字数 226
阅读 3
收藏 0

/**
 * 功能:给定两个排序后的数组A和B,其中A的末端有足够的缓冲空间容纳B。将B合并入A并排序。

 */

 

 

  1. /**  
  2.  * 问题:如果将元素插入数组A的前端,就必须将原有的元素向后移动,以腾出空间。  
  3.  * 思路:将元素插入数组A的末端。  
  4.  *   
  5.  * 注意:在处理完B的元素之后,不需要复制A的剩余元素,因为那些元素原本就在A中。  
  6.  * @param a  
  7.  * @param b  
  8.  * @param lastA  
  9.  * @param lastB  
  10.  */  
  11. public static void merge(int[] a,int[] b,int lastA,int lastB){  
  12.     int indexA=lastA-1;  
  13.     int indexB=lastB-1;  
  14.     int indexMerged=lastA+lastB-1;  
  15.       
  16.     while(indexA>=0&&indexB>=0){  
  17.         if(a[indexA]>b[indexB]){  
  18.             a[indexMerged]=a[indexA];  
  19.             indexMerged--;  
  20.             indexA--;  
  21.         }else{  
  22.             a[indexMerged]=a[indexB];  
  23.             indexMerged--;  
  24.             indexB--;  
  25.         }  
  26.     }  
  27.       
  28.     while(indexB>=0){  
  29.         a[indexMerged]=a[indexB];  
  30.         indexMerged--;  
  31.         indexB--;  
  32.     }  
  33.       

© 著作权归作者所有

共有 人打赏支持
一贱书生
粉丝 19
博文 724
码字总数 600123
作品 0
[LeetCode]Merge Sorted Array 合并排序数组

链接:https://leetcode.com/problems/merge-sorted-array/description/ 难度:Easy 题目:88. Merge Sorted Array Given two sorted integer arrays nums1 and nums2, merge nums2 into nu......

繁著
2017/11/30
0
0
Lintcode6 Merge Two Sorted Arrays solution 题解

【题目描述】 Merge two given sorted integer array A and B into a new sorted integer array. 合并两个排序的整数数组A和B变成一个新的数组。 【题目链接】 http://www.lintcode.com/en/p...

coderer
2017/04/15
0
0
Leetcode 排序类题目 排序算法总结

1. Merge Sorted Array Description: Easy Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: You may assume that nums1 has enough......

BookThief
07/27
0
0
合并排序数组

原题   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 grea......

一贱书生
2016/12/19
2
0
一些面试题,整理自网络

腾讯面试题:tcp三次握手的过程,accept发生在三次握手哪个阶段? 答accept发生在三次握手之后。 第一次握手:客户端发送syn包(syn=j)到服务器。 第二次握手:服务器收到syn包,必须确认客户...

waveer
2016/12/08
24
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring 容器实现对bean的管理(注解方式解析,源码阅读)

因为最近在研究学习spring boot,所以这里想详细学习回顾了一下spring 容器对bean的一些管理方式和部分源码学习。 首先初始类AnnotationConfigApplicationContext,简单源码查看,支持两个参...

小海bug
16分钟前
0
0
数据结构:二分查找 java

二分查找的前提是有序存储,利用顺序存储和元素排序 /** * 二分查找,查找成功,返回下标记 * @param values * @param begin * @param end * @param key * @param <T> * @ret...

京一
34分钟前
0
0
@SpringBootApplication 注解

@SpringBootApplication注解是一个组合注解,包含以下注解 @Target(ElementType.TYPE) 注解的作用目标 @Retention(RetentionPolicy.RUNTIME) Reteniton的作用是定义被它所注解的注解保留多久,...

java.刘
47分钟前
0
0
sentinel自定义DataSource实战

序 本文主要研究一下如何自定义sentinel的DataSource,这里以jdbc为例。 maven <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-sen......

go4it
今天
1
0
xgboost/gbdt在调参时为什么树的深度很少就能达到很高的精度?

问题: 用xgboost/gbdt在在调参的时候把树的最大深度调成6就有很高的精度了。但是用DecisionTree/RandomForest的时候需要把树的深度调到15或更高。用RandomForest所需要的树的深度和Decisio...

tantexian
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部