關於有序二維矩陣查詢和字串替換的兩道演算法題

2021-09-22 19:18:50 字數 816 閱讀 3247

最近看一本書上寫到的兩個面試題 於是實現了一下 感覺思路很好,大牛略過 :

1、對於乙個二維矩陣,從左到右  從上到下 都是遞增的,如何判斷乙個值是否在矩陣內部?(c實現  實現複雜度 o(n))

bool findintwodimensionalmatrix(int*pmatrix,int irows,int icols,int ifindval)

else if(pmatrix[irow*icols+icol]>ifindval)

--icol;

else

++irow;

}return bfind ;

}

2、在乙個記憶體足夠大的空間中,儲存的 一串字串行,替換其中的空格為  %20?(c實現,時間複雜度 o(n))

void  replacecharinenoughmemory(char*pstr)

ptem++;

}//後面等於 '\0'需要添上

pbehand=pstr+nlen-1+nspace*2;

pfront=pstr+nlen-1;

for(;;)

else

if(pfront==pstr)

break ;

pbehand--;

pfront--;

}//結尾

*(pstr+nlen-1+nspace*2+1)='\0';

}

好了 就寫到這裡。

字串hash Matrix(二維)

給定乙個m行n列的01矩陣 只包含數字0或1的矩陣 再執行q次詢問,每次詢問給出乙個a行b列的01矩陣,求該矩陣是否在原矩陣 現過。第一行四個整數m,n,a,b。接下來乙個m行n列的01矩陣,數字之間沒有空格。接下來乙個整數q。接下來q個a行b列的01矩陣,數字之間沒有空格。對於每個詢問,輸出1表示...

Python字串string的查詢和替換

hello str hello world 1.判斷空白字元 space str t n r print space str.isspace 2.判斷是否以指定字串開始 print hello str.startswith hello 3.判斷是否已指定字串結束 print hello str.en...

二維陣列 字串 API

1 二維陣列 陣列中的元素,又指向乙個新的子陣列 何時使用 1.儲存橫行豎列的資料時 2.分組儲存上下級包含關係時 如何建立 1.先建立空陣列,再初始化元素為子陣列 var data data 0 0,0,0,0 data 1 0,0,0,0 何時使用 不確定子陣列的個數或內容時 2.建立時就初始化...