博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法题——合并两个有序的数组
阅读量:2344 次
发布时间:2019-05-10

本文共 556 字,大约阅读时间需要 1 分钟。

1. 本题知识点

双指针

2. 题目描述

给出两个有序的整数数组 A 和 B,请将数组 A 合并到数组 B 中,变成一个有序的数组

注意:

可以假设 A 数组有足够的空间存放 B 数组的元素,A 和 B 中初始的元素数目分别为 m 和 n

3. 解题思路

从后往前看,在每一个位置上选择 A 和 B 中较小的那一个。

4. 代码

public class Solution {
public void merge(int A[], int m, int B[], int n) {
for(int i = m -1, j = n - 1, k = m+n-1; k >= 0; k--) {
// B数组中的数全部用完了就填A数组中的数 if (j < 0 || (i >= 0 && A[i] >= B[j])) {
A[k] = A[i]; i--; } else {
A[k] = B[j]; j--; } } }}

转载地址:http://ucjvb.baihongyu.com/

你可能感兴趣的文章
mmap内存映射和shmget共享内存
查看>>
c中int和long类型
查看>>
二维字符数组与字符串数组
查看>>
c中指针赋值为0
查看>>
c中求二维数组的行数和列数
查看>>
三目运算符跟赋值运算符的计算顺序
查看>>
elf文件与符号表
查看>>
linux net-snmp(之安装及配置)
查看>>
linux net-snmp(之android移植)
查看>>
linux net-snmp(之mib2c工具生成标量节点代码)
查看>>
linux net-snmp(之mib2c工具生成表格代码)
查看>>
扩展程序运行时的库路径
查看>>
【CUDA并行程序设计系列(4)】CUDA内存
查看>>
CPU、GPU、CUDA,CuDNN 简介
查看>>
U-boot如何引导Linux内核启动?
查看>>
程序各个段text,data,bss,stack,heap
查看>>
如何利用ROS MoveIt快速搭建机器人运动规划平台?
查看>>
catkin_make &amp;amp;catkin build
查看>>
Camera和IMU的标定过程之kalibr 源码编译
查看>>
在ubuntu下安装python的numpy和scipy模块
查看>>