class solution {
public:
vectorfinddiagonalorder(vector>& matrix) {
vectorres;
int m = matrix.size();
if(m==0)
return res;
int n = matrix[0].size();
int x=0,y=0;
res.push_back(matrix[x][y]);
for(int i=0;i0&&x0)
res.push_back(matrix[--x][++y]);
if(y注意最後一次迴圈必須不要,因為每次迴圈會將下一次迴圈的起始點新增進vector中,所以倒數第二次迴圈已經將最後一次的起始點(也是最後一次唯一的乙個點)加入到vector中了,如果進行最後一次迴圈,就會再新增乙個越界的點到陣列中,造成陣列越界。
遍歷的幾種方式
es5的話也可以使用foreach,es5具有遍歷陣列功能的還有map filter some every reduce reduceright等,只不過他們的返回結果不一樣。但是使用 foreach 遍歷陣列的話,使用 break 不能中斷迴圈,使用 return 也不能返回到外層函式。使用for...
游標遍歷的幾種方式
1.定義游標 cursor c student is select id,first name,last name,major from t test students 遍歷游標 open c student loop fetch c student into v newid,v newfirstn...
集合的幾種遍歷方式
listlist new arraylist list.add aaa list.add bbb list.add ccc 普通for迴圈 for int i 0 i list.size i 增強for迴圈 for string string list 使用迭代器 iteratorite list....