課本源碼部分
第3章 棧和隊列 - 行編輯程序
——《數據結構》-嚴蔚敏.吳偉民版
源碼使用說明 鏈接☛☛☛ 《數據結構-C語言版》(嚴蔚敏,吳偉民版)課本源碼+習題集解析使用說明
課本源碼合輯 鏈接☛☛☛ 《數據結構》課本源碼合輯
習題集全解析 鏈接☛☛☛ 《數據結構題集》習題解析合輯
本源碼引入的文件 鏈接☛ SequenceStack.c
文檔中源碼及測試數據存放目錄:數據結構\▲課本算法實現\▲03 棧和隊列\03 LineEdit
概述
行編輯程序是模擬文本輸入的過程,對輸入中的退格、替換等操作要做出響應。
解析
在文本輸入中,不能確保所有的輸入都正確,這時候就需要一個緩沖區來存放輸入的字符串,以便之后進行增刪操作。在增刪過程中,總是先從緩沖區的末尾開始修改,無疑,棧是這個緩沖區的最佳選擇。
注:原書的代碼實現了人機互動,為了解決手動輸入文本的麻煩,這兒采取的策略是先將輸入預先保存到一個字符串中,然后對字符串進行處理之后再輸出,這樣可以簡化測試流程。
源碼
文件一 ☛ LineEdit.h
文件二 ☛ LineEdit.c
文件三 ☛ LineEdit-main.c (測試文檔)
測試結果展示