在c語言中雖已有對應庫函式,比如reverse()可對字串進行逆置,但為了更加清晰地了解其工作原理,並為了多多感受指標、遞迴的魅力,所以本篇部落格便是準備介紹幾種字串逆置的方法,輔助於自身探索之用。
(1)無遞迴,利用指標的簡單方法
此法是利用了指標,去依次交換字元,最後實現字串的逆置。
/*
*檔案功能:字串逆置
*/#include
#include
/**函式名: reverse_string_2
*函式引數:需逆置的字串
*函式功能:逆置字串
*/void
reverse_string_2
(char
*str)
//printf("%s\n", str);
}/*主函式*/
intmain()
該程式亦可改寫為下述程式:
#include
#include
/**函式名: reverse_string_1
*函式引數:需逆置的字串
*函式功能:逆置字串
*/void
reverse_string_1
(char
* str)
//printf("無遞迴:%s\n", str);
}/*主函式*/
intmain()
(2)有遞迴,利用指標的方法
此法是在利用指標進行交換字元的基礎上,使用了遞迴的方法。
程式呼叫自身的程式設計技巧稱為遞迴( recursion)。遞迴做為一種演算法在程式語言中廣泛應用。乙個過程或函式在其定義或說明中有直接或間接呼叫自身的一種方法,它通常把乙個大型複雜的問題層層轉化為乙個與原問題相似的規模較小的問題來求解,遞迴策略只需少量的程式就可描述出解題過程所需要的多次重複計算,大大地減少了程式的**量。
#include
#include
/**函式名: reverse_string
*函式引數:需逆置的字串
*函式功能:逆置字串
*/void
reverse_string
(char
* str)
/*主函式*/
intmain()
讀者可根據自身需求,對上述程式進行除錯,仔細體會一下遞迴或無遞迴實現字串逆置的實現原理。 python字串逆置 字串逆置演算法
1,輸人 字串 123456 輸出 654321 注意 字元陣列不等於字串,只有當字元陣列結尾加上結束標誌 0 才是字串。所以字串用字元陣列來初始化時,結尾必須加上 0 比如 初始化字串 char ch 7 如下 include include include define maxsize 100 ...
字串逆置
題目描述 字串 i am a student 逆置為 student a am i 思路 第一次逆置 先將整個字串都逆置 tneduts a ma i 第二次逆置再將每個單詞逆置 student a am i 利用空格找出乙個單詞進行逆置 public class testdemo2 public ...
C語言 遞迴實現字串逆置
遞迴實現字串逆置 遞迴 程式呼叫自身的程式設計技巧稱為遞迴 recursion 遞迴做為一種演算法在程式語言中廣泛應用。乙個過程或函式在其定義或說明中有直接或間接呼叫自身的一種方法,它通常把乙個大型複雜的問題層層轉化為乙個與原問題相似的規模較小的問題來求解,遞迴策略只需少量的程式就可描述出解題過程所...