請大神幫看一下為何出現了非法記憶體訪問!!
#include<iostream>
using namespace std;
int main()
{
int shu1;
int shu2;
cin >> shu1;
cin >> shu2;
int *p = new int[shu1];
int *q = new int[shu2];
int*z = new int[shu1 + shu2];
int min, zh;
for (int i = 0; i < shu1; i++)
{
cin >> p[shu1];
}
for (int i = 0; i < shu2; i++)
{
cin >> q[shu2];
}
for (int j = 0; j < shu1; j++)
{
z[j] = p[j];
}
for (int a = shu1; a < shu1 + shu2; a++)
{
int i = 0;
if (i < shu2)
{
z[a] = q[i];
i++;
}
}
for (int h = 0; h < shu1 + shu2; h++)
{
min = z[h];
for (int hh = -0; hh < shu1 + shu2; hh++)
{
if (hh < min)
{
zh = z[h];
z[h] = z[hh];
z[hh] = zh;
}
}
}
for (int counter = 0; counter < shu1 + shu2; counter++)
{
cout << z[counter];
}
delete[]p;
delete[]q;
delete[]z;
system("Pause");
}
這是題目!!
把兩個升序排列的整型陣列合并為一個升序陣列,要求先分別輸入兩個陣列的長度,再分別輸入資料。設計好演算法,以得到較高的運行效率。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/67683.html
標籤:基礎類
上一篇:解回圈陣列最大連續子段和問題,為什么像這樣寫是不對的
下一篇:c++重構函式的一個運算式沒懂
