之前做過最大一維陣列子陣列的和的題目,現在將陣列擴充套件成二維:
**如下:
#include#define null -858993460view codeusing
namespace
std;
void
main()
;
int arr2=;
int arr3=;
int arr4=;
int arr5[3
];
int a[100]=,,};
int b[2][100
];
int c[3][100]=,,};
int yiwei_maxsub_list(int list,int
length);
int erwei_maxsub_list(int list[100],int x,int
y); cout
<
一維陣列:
"<
cout
<7)<
cout
<4)<
cout
<1)<
cout
<3)<
cout
<0)<
cout
<
二維陣列:
"<
cout
<3,6)<
cout
<0,0)<
cout
<3,3)<
}int yiwei_maxsub_list(int list,int
length)
;
intmax;
inti,j;
int k=0
;
if(list==null||length==0
)
for(i=0;i)
}max=a[0
];
for(i=0;i)
}return
max;
}int erwei_maxsub_list(int list[100],int x,int
y),,};x=3,y=6
int a[100][100]=;
int b[100][100]=;
intmax,i,j,n;
int t,k;//
t行擴充套件後的,k列擴充套件
if(list==null||x==0||y==0)//
異常處理
for(n=0;n//
n層(x)}}
t=k;
for(n=0;n//
n列(t)}}
max=list[0][0
];
for(i=0;i)
}
return
max;
}
截圖:方法:將二維陣列引數傳入函式後,函式將陣列先進行行擴充套件,每行記錄單獨一行的子陣列,然後列擴充套件,將原來的二維陣列擴充套件為子陣列和的陣列,然後遍歷擴充套件後的陣列找到最大值;這樣時間複雜度是(m+n)².
總結:這其實體現了敏捷開發中的問題,使用者的需求不斷改變,團隊的效率建立在過去的基礎上,迭代開發的效率會比較高。這也是現在軟體開發的主流,需要團隊合作,**規範,程式結構完整,健壯性強等等。再今後的軟體工程學習和運用中深入體會。
二維陣列中的查詢(陣列 查詢)
題目描述 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。思路一 從左下角來看矩陣,向上數字遞減,向右數字遞增 從左下角開始查詢,當要查詢數字比左下角數字大時,右移 要查詢數字比左下...
二維陣列中的查詢
二維陣列中的查詢 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。例如下面的二維陣列就是每行 每列都遞增排序。如果在這個陣列中查詢數字7,則返回true 如果查詢數字5,由於陣列不含...
二維陣列中的查詢
何海濤 劍指offer 名企面試官精講典型程式設計題 九度oj 題目描述 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。輸入 輸入可能包含多個測試樣例,對於每個測試案例,輸入的第一...