數(shù)據(jù)結(jié)構(gòu)與C++算法設(shè)計案例教程

出版時間:2011-1  出版社:機械工業(yè)出版社  作者:賴俊峰,高博 主編  頁數(shù):278  
Tag標簽:無  

前言

  隨著信息技術(shù)的發(fā)展,計算機已經(jīng)深入到社會的各個領(lǐng)域,各行各業(yè)都需要對大量的數(shù)據(jù)進行存儲、加工和管理。如何對數(shù)據(jù)進行有效的存儲和處理,如何編寫出高效的程序,這就是“數(shù)據(jù)結(jié)構(gòu)”這門課程所要解決的問題。通過對“數(shù)據(jù)結(jié)構(gòu)”的學習,不但可以寫出更高質(zhì)量的程序,還可以為“操作系統(tǒng)”、“編譯原理”和“數(shù)據(jù)庫”等后續(xù)課程的學習打下良好的基礎(chǔ)。如何開發(fā)適應(yīng)社會需求的C++算法設(shè)計類案例教材,已成為信息時代高職高專計算機類課程教學改革的當務(wù)之急?! 榱烁玫卮龠M高職高專院校計算機類課程的教學改革,高職高專計算機類課程改革規(guī)劃教材編委會組織多所大學、高職高專院校從事計算機教研、教學第一線的專家和骨干教師,在認真分析和探討教育部對高職高專各專業(yè)學生的培養(yǎng)目標、國家計算機等級考試和職業(yè)技能鑒定要求的基礎(chǔ)上策劃了“高職高專計算機類課程改革規(guī)劃教材”。同時,編委會向中國教育技術(shù)協(xié)會申報了“國家社會科學基金‘十一五’規(guī)劃(教育學科)國家級課題‘信息技術(shù)環(huán)境下多元學與教方式有效融入日常教學的研究”的子課題“高職高專計算機類課程改革的研究”,目前課題研究正在進行中。本課題立項研究面向信息技術(shù)職業(yè)領(lǐng)域不同崗位層次如何有效融合高職高專計算機信息類專業(yè)設(shè)置、課程體系構(gòu)建、教學模式改革和教材課件開發(fā)等多層次的教學設(shè)計基本理論和實現(xiàn)方法。通過系統(tǒng)研究,總結(jié)和提煉課題組成員以及有關(guān)專家學者已經(jīng)取得的相關(guān)成果,探索高職高專計算機類專業(yè)課程標準建設(shè)的新思路,提出系統(tǒng)地進行高職高專計算機類課程改革的新方法,開發(fā)建設(shè)具有鮮明高職高專特色的系列教材和課件,旨在為我國高職高專計算機信息類專業(yè)設(shè)置、課程和教學改革、教材課件建設(shè)探索出一條坦途?! 「鶕?jù)“課程間的耦合度”和“職業(yè)相關(guān)度”,我們將計算機信息類專業(yè)課程群體系劃分為職業(yè)基礎(chǔ)能力層面、職業(yè)崗位能力層面和職業(yè)拓展能力層面三個層次?!皵?shù)據(jù)結(jié)構(gòu)與C++算法設(shè)計案例教程”課程在高職高專計算機信息類專業(yè)的課程體系中屬于職業(yè)基礎(chǔ)能力層面,是學生學習應(yīng)用開發(fā)、嵌入式系統(tǒng)開發(fā)、游戲軟件開發(fā)等軟件開發(fā)職業(yè)方向各種技能課程的基礎(chǔ),同時又是國家計算機等級考試大綱涵蓋的必備理論知識和操作技能的主要組成部分。因此,在高職高專計算機信息類各專業(yè)課程體系中,“數(shù)據(jù)結(jié)構(gòu)”課程作為多門職業(yè)崗位能力層面課程或職業(yè)拓展能力層面課程(課程群)的前導課程而起著非常重要的作用。但在高職高專教育層次,數(shù)據(jù)結(jié)構(gòu)程序設(shè)計教材大多使用C語言,而在實際中C++語言卻是使用最多的語言。通過立項研究,我們認為應(yīng)以一個完整的軟件開發(fā)案例為主線,將C++語言基礎(chǔ)知識學習和軟件開發(fā)基本技能實訓并舉作為課程標準的依據(jù),在制定課程標準、開發(fā)教材課件以及課堂教學設(shè)計中充分體現(xiàn)本課程的“基礎(chǔ)性”和“職業(yè)性”特色。因此,本書在兼顧國家計算機等級考試數(shù)據(jù)結(jié)構(gòu)考試大綱、國家高新技術(shù)模塊考試標準的同時,將圍繞一個完整案例的需求分析、設(shè)計、開發(fā)環(huán)境的選擇與安裝配置、編程實現(xiàn)以及發(fā)布、部署、運行測試、整合應(yīng)用等核心組織編寫。

內(nèi)容概要

數(shù)據(jù)結(jié)構(gòu)是高等學校計算機專業(yè)的核心課程,同時也是信息管理、電子商務(wù)等相關(guān)專業(yè)的重要基礎(chǔ)課。本書是數(shù)據(jù)結(jié)構(gòu)的案例教程,介紹了數(shù)據(jù)結(jié)構(gòu)的基本概念,線性表及順序存儲結(jié)構(gòu),棧和隊列的基本操作,數(shù)組、串和廣義表的基本概念,二叉樹和樹的概念及性質(zhì),圖的存儲結(jié)構(gòu)和常用算法,查找和內(nèi)部排序的程序?qū)崿F(xiàn)等知識。全書以任務(wù)為驅(qū)動,知識層層深入,共分為9個模塊,每一個模塊下又分為幾個任務(wù),每個任務(wù)都有明確的學習目標和多個案例。通過每一個任務(wù)的學習,力求使讀者學會一項技能、解決幾個實際生活中遇到的問題。本書提供全套源代碼,源代碼中包含了大量經(jīng)典算法和一些拓展算法,均為完整的、可獨立運行的C++語言程序。
本書可作為成人本???、高職高專、中職中專等院校的專業(yè)教材,也可作為參加數(shù)據(jù)結(jié)構(gòu)考試、國家高新技術(shù)考試的輔導用書,還可供C++語言愛好者自學或參考。
為方便教學,本書配備電子課件等教學資源。凡選用本書作為教材的教師均可登錄機械工業(yè)出版社教材服務(wù)網(wǎng)www.cmpedu.com免費下載。如有問題請致信cmpgaozhi@sina.com或致電010-88379375咨詢。

書籍目錄


前言
模塊一 C++語言基礎(chǔ)
任務(wù)一 一個簡單的C++語言程序
子任務(wù)1 建立主函數(shù)
子任務(wù)2 C++語言的輸入、輸出
子任務(wù)3 函數(shù)的調(diào)用與指針操作
任務(wù)二 面向?qū)ο蟮某绦蛟O(shè)計
子任務(wù)1 類的定義
子任務(wù)2 構(gòu)造函數(shù)和析構(gòu)函數(shù)
子任務(wù)3 繼承的實現(xiàn)
任務(wù)三 VC 6.0簡介
子任務(wù)1 建立文件和程序的編譯、鏈接、執(zhí)行
子任務(wù)2 新建類及增加成員
學材小結(jié)
模塊二 數(shù)據(jù)結(jié)構(gòu)與算法
任務(wù)一 學習數(shù)據(jù)結(jié)構(gòu)的必要性
任務(wù)二 數(shù)據(jù)結(jié)構(gòu)
子任務(wù)1 基本術(shù)語
子任務(wù)2 算法設(shè)計的特性和算法設(shè)計的要求
子任務(wù)3 算法效率的度量
學材小結(jié)
模塊三 線性表
任務(wù)一 理解線性表的邏輯結(jié)構(gòu)
子任務(wù)1 線性表的邏輯定義和特征
子任務(wù)2 線性表的操作
任務(wù)二 線性表的順序存儲結(jié)構(gòu)
子任務(wù)1 順序表的定義
子任務(wù)2 順序表的幾種基本操作
任務(wù)三 線性表的鏈式存儲結(jié)構(gòu)(鏈表)
子任務(wù)1 鏈表的概念與特點
子任務(wù)2 單鏈表的基本運算
子任務(wù)3 單循環(huán)鏈表和雙向鏈表
學材小結(jié)
模塊四 棧和隊列
任務(wù)一 棧的概念和基本操作
子任務(wù)1 棧的概念
子任務(wù)2 棧的主要操作
子任務(wù)3 棧的應(yīng)用
任務(wù)二 隊列的概念和操作
子任務(wù)1 隊列的概念
子任務(wù)2 隊列的操作
子任務(wù)3 循環(huán)隊列
學材小結(jié)
模塊五 數(shù)組、串和廣義表
任務(wù)一 數(shù)組
子任務(wù)1 數(shù)組的定義
子任務(wù)2 數(shù)組的基本操作
子任務(wù)3 特殊矩陣的壓縮存儲
任務(wù)二 串
子任務(wù)1 串的概念
子任務(wù)2 串的存儲
子任務(wù)3 串的模式匹配算法
任務(wù)三 廣義表
學材小結(jié)
模塊六 二又樹和樹
任務(wù)一 二叉樹
子任務(wù)1 二叉樹的概念和性質(zhì)
子任務(wù)2 二叉樹的存儲
子任務(wù)3 二叉樹的遍歷
子任務(wù)4 哈夫曼樹
任務(wù)二 樹和森林
子任務(wù)1 樹和森林的概念
子任務(wù)2 樹和森林的存儲
子任務(wù)3樹(森林)與二叉樹的轉(zhuǎn)換和樹(森林)的遍歷
學材小結(jié)
模塊七 圖
任務(wù)一 圖的定義和術(shù)語
任務(wù)二 圖的存儲結(jié)構(gòu)
子任務(wù)1 鄰接矩陣法
子任務(wù)2 鄰接表和逆鄰接表
子任務(wù)3 十字鏈表
任務(wù)三 圖的遍歷算法
子任務(wù)1 圖的深度遍歷
子任務(wù)2 圖的廣度遍歷
任務(wù)四 圖的應(yīng)用
子任務(wù)1 最小生成樹
子任務(wù)2 最短路徑
子任務(wù)3 拓撲排序
學材小結(jié)
模塊八 查找
任務(wù)一 查找的基本概念
任務(wù)二 靜態(tài)查找
子任務(wù)1 順序表的查找
子任務(wù)2 折半查找
子任務(wù)3 索引查找
任務(wù)三 動態(tài)查找
子任務(wù)1 二叉排序樹
子任務(wù)2 哈希表
學材小結(jié)
模塊九 內(nèi)部排序
任務(wù)一 內(nèi)部排序的概念和排序的方法
任務(wù)二 插入排序
子任務(wù)1 直接插入排序
子任務(wù)2 表插入排序
子任務(wù)3 希爾插入
任務(wù)三 交換排序
子任務(wù)1 冒泡排序
子任務(wù)2 快速排序
任務(wù)四 選擇排序
子任務(wù)1 簡單選擇排序
子任務(wù)2 堆排序
任務(wù)五 歸并排序
任務(wù)六 基數(shù)排序
學材小結(jié)
參考文獻

章節(jié)摘錄

  本節(jié)任務(wù)首先介紹面向?qū)ο蟮幕舅枷?,類、封裝、繼承、多態(tài)等概念,然后介紹面向?qū)ο蟮某绦蛟O(shè)計中的常用保留關(guān)鍵字,成員變量和成員函數(shù)的定義,訪問權(quán)限的作用和一些特殊的成員變量。下面要介紹的主要內(nèi)容有:  1)面向?qū)ο蟮幕A(chǔ)知識,類的聲明方法?! ?)成員函數(shù)、成員變量和訪問權(quán)限?! ?)特殊的成員變量(靜態(tài)成員變量、靜態(tài)成員函數(shù))。  類是具有相同類型的對象的抽象。每一個類就是一種新的數(shù)據(jù)類型。對象是類的具體實例,每一個對象都是屬性與操作的結(jié)合體。對象中的一些數(shù)據(jù)和操作是私有的,它不能被外界訪問。封裝避免了外界的干擾和不確定性,各對象之間也具有了獨立性。封裝使數(shù)據(jù)和函數(shù)成為一個整體。用戶可以看到對象的外部特征,而對象的內(nèi)特征對用戶是隱蔽的。封裝的優(yōu)勢還在于把對象的設(shè)計者和使用者相互分開,使用者不必知道對象內(nèi)部實現(xiàn)的細節(jié),只須用對象提供的方法來訪問該對象。

編輯推薦

  高職高專計算機類課程改革規(guī)劃教材,國家社會科學基金“十一五”規(guī)劃(教育學科)國家級課題成果

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    數(shù)據(jù)結(jié)構(gòu)與C++算法設(shè)計案例教程 PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7