日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

[C++] 牛客网:合并两个有序的数组

發(fā)布時間:2023/11/27 生活经验 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [C++] 牛客网:合并两个有序的数组 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

主要是體驗一下牛客網(wǎng)里的核心代碼模式到底是怎么弄的。。還有C++這個東西平常用的太少了,試一試。
以外的還體驗到了sort()函數(shù)的使用。
來源:牛客網(wǎng)
題目鏈接:合并兩個有序的數(shù)組
知識點:數(shù)組、雙指針

描述

給出一個整數(shù)數(shù)組 A 和有序的整數(shù)數(shù)組 B ,請將數(shù)組 B 合并到數(shù)組 A 中,變成一個有序的升序數(shù)組

數(shù)據(jù)范圍:

注意:

  1. 保證 A 數(shù)組有足夠的空間存放 B 數(shù)組的元素, A 和 B 中初始的元素數(shù)目分別為 m 和 n,A的數(shù)組空間大小為 m+n
  2. 不要返回合并的數(shù)組,將數(shù)組 B 的數(shù)據(jù)合并到 A 里面就好了
  3. A 數(shù)組在[0,m-1]的范圍也是有序的

例1:

A: [4,5,6,0,0,0],m=3
B: [1,2,3],n=3
合并過后A為:
A: [1,2,3,4,5,6]

示例1

輸入:

[4,5,6],[1,2,3]

返回值:

[1,2,3,4,5,6]

說明:

A數(shù)組為[4,5,6],B數(shù)組為[1,2,3],后臺程序會預(yù)先將A擴(kuò)容為[4,5,6,0,0,0],B還是為[1,2,3],m=3,n=3,傳入到函數(shù)merge里面,然后請同學(xué)完成merge函數(shù),將B的數(shù)據(jù)合并A里面,最后后臺程序輸出A數(shù)組

示例2

輸入:

[1,2,3],[2,5,6]

返回值:

[1,2,2,3,5,6]

思路

主要是體驗一下牛客網(wǎng)上的核心代碼模式到底是怎么操作的,還有C++。
這題應(yīng)該算是很簡單了,不過居然沒有#include<cstring>就不能用strcat的方法。本來想一個strcat和一個sort()光速解決問題,沒想到還是要手動連接。
本質(zhì)上就是連接之后進(jìn)行一個排序,注意這里要破壞原數(shù)組A,返回值是void(就是說它直接輸出你破壞掉的A)。
sort()的使用:

sort(A, A + m + n);

解題代碼

class Solution {
public:void merge(int A[], int m, int B[], int n) {int i, j;j = 0;for (i = m; i < m + n; i++) {A[i] = B[j];j++;}sort(A, A + m + n);}
};

總結(jié)

以上是生活随笔為你收集整理的[C++] 牛客网:合并两个有序的数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。