劍指offer之字元陣列內容翻轉問題

2021-07-11 02:11:43 字數 549 閱讀 7292

分析思路:先將字元陣列翻轉為:「i ma a tneduts」,再將翻轉後的陣列內容逐個字元翻轉達到目的效果"i am a student".

要實現第一次翻轉則需要使用兩個指標,乙個指向陣列首元素,乙個指向陣列尾元素,將陣列內容按字元翻轉;如何實現第二次翻轉呢?我們通過觀察該字元陣列發現當空格或者『\0』出現時標誌著乙個字元的結束,要實現逐個翻轉字元就要找到字元陣列中的空格或者'\0',並重新設定兩個指標,乙個指向要翻轉字元的首字母,乙個指向要翻轉字元的尾字母,並呼叫翻轉函式將對應字元翻轉。指標繼續向後查詢再次尋找滿足題意要翻轉的字元。

**實現:

#define _crt_secure_no_warnings

#include#includevoid reverse_str(char *left,char *right)

{char tmp=0;

while(left程式結果:

劍指offer之陣列查詢

題目 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。完成 coding utf 8 class solution array 二維列表 deffind self,target,ar...

劍指OFFER之陣列篇

根據b站up主土妹的方法,像以前高中初中複習一樣來鍛鍊自己做演算法題的能力!把劍指offer的題目作為例題,系統學習乙個知識點之後,再去做leetcode的題目。加油!toc 目錄 地上有乙個m行和n列的方格。乙個機械人從座標0,0的格仔開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能...

劍指offer 陣列

資料是最簡單的資料結構,它佔據一塊連續的記憶體並按照順序儲存資料。建立陣列時,首先指點陣列的容量大小,然後根據大小分配記憶體。缺點 空間效率不高。經常有空閒的區域滅有得到充分利用。優點 時間效率很高。可以根據時間效率高的特點,來實現簡單的雜湊表 把陣列的下標設為雜湊表的鍵值,陣列中的每乙個數字設為雜...