C/C++及其相关
-
数据结构教程秦小麟,叶延风,高航编著这是一部关于数据结构(用C++实现的方法)的实用教科书。内容新颖全面,讲解深入细致,编写时,特别注重根据不同的教学对象定位不同的培养目标,各章、节的重难点,主次内容都做了恰当合理的安排。全书由10章构成,其主要内容包括:数据结构课程的背景及有关的概念和术语、C++面向对象程序设计要点、线性表、栈和队列、数组、广义表和串、树和二叉树、图、集合和查找、各种常用的排序算法、文件的物理结构及其支持空间数据的索引文件—— R树。此外,本书各章均配有一定的算法实例和丰富的习题供读者练习,巩固所学知识。作者从事一线的教学二十余年,积累了丰富的教学经验,本书在整体结构安排、内容取舍以及整书的编写过程中,都充分考虑了教与学的特点,以及所面对的特定读者的具体需要。在内容上既注重了理论体系的完整性,又兼具系统性和先进性。结构清晰,概念准确,文字叙述简洁明了、可读性强,既便于教师课堂讲授,又便于自学者阅读。通过阅读本书,可对数据结构有全面的了解,并为进一步深入学习和研究计算机科学技术奠定基础。本书可作为普通高校、高等职业学校计算机科学与技术专业本、专科学生的教材和教学参考书,也可以作为工程技术人员的自学教材或指导书。 -
C++程序设计语言揣锦华主编C++是一种高效实用的程序设计语言,它既可以进行结构化程序设计,又可以进行面向对象程序设计。《新世纪计算机类本科规划教材:C++程序设计语言》作为《C++程序设计语言》的辅助教材,精练地介绍了C++语言的基本知识点与内容概要,紧扣《C++程序设计语言》的学习要求,选择极具代表性的典型例题进行分析,对掌握程序设计的基本技能与常用算法具有很强的指导作用。《新世纪计算机类本科规划教材:C++程序设计语言》在编写中力求采取由浅入深、由简到繁的展开方式,尽量运用简单明了、通俗易懂的表述语言。《新世纪计算机类本科规划教材:C++程序设计语言》还根据教学大纲,为每章配备了相应的上机实验内容,这既方便教师安排教学,又便于读者上机实习。《C++程序设计语言》由揣锦华主编,适合作为高等院校计算机专业和非计算机专业学习“C++程序设计”课程的辅助教材,也可作为参加各类相关计算机程序设计考试用书。 -
C++上机实践指导教程(美)Nell Dale著;马树奇等译;马树奇译随着软件项目复杂程序的日益增加,C++作为一种成熟的面向对象的程序设计语言已经在计算机软件工程领域具有了无与伦比的重要地位。本书对C++上机实践过程进行了科学的组织和安排,能够循序渐进地引导热心于C++技术的人们训练、提高自己的C++编程水平。尤其难得的是,本书的作者具有丰富的教学经验,真正按照科学的认知理论和实践来组织书中的内容,既有必要的知识点回顾,又有丰富的练习题,是广大C++初学者的良师益友。本书适用于学习了C++基本编程知识之后,需要进一步提高编程水平的技术人员及在校学生,既适合在学校里作为上机教材,又可以满足已经工作的朋友自修的需要。本书安排了18个联系紧密的上机训练单元,既向学生提出了需要解决的问题,又能够给予他们必要的支持,使他们能够成长为高水平的程序员。书中的每项上机练习都应用了科学的教育方法,指出学生要主动学习的重点。有了这部教程,学习C++的学生就能够有机会应用自己的知识,并且更准确地理解相关的编程概念。通过教程中系统安排的上机前的练习、上机实践和课后练习活动,学生能够提高编程的技巧,同时树立信心。本教程采用灵活的结构,讲述了每个C++构件的语法和语义,即是高校课程中实验室教学的理想教材,又适合学生自学的要求。 -
数据结构唐策善,李龙澍,黄刘生编著本书系统地介绍了各种常用的数据结构以及排序、查找的各种算法。阐述了各种数据结构的逻辑关系、存储表示及运算操作,并对C语言描述的算法作了详细的注解和简要的性能分析。全书既注重原理又结合实践,配有大量的图表、例题和习题,内容丰富,概念讲解清楚,逻辑性强,可读性好。各章的小结可以使读者抓住本章重点。书中针对不同层次教学的特点和需要用“*”号标明。每章备有习题。本书可作为高等院校计算机有关专业本科生、专科生的教材,也可作为成人教育(面授或函授)的教材,还可供广大从事计算机应用的科技人员参考。 -
有限元分析教学范本FEMLAB与Mathematica夸克工作室FEMLAB是一种有限元分析的通用软件包,Mathematica是一种著名的数学软件。本书选择以Mathematica来进行数学验证,再以FEMLAB进行分析。本书首先介绍了计算机辅助工程分析的基本结构、工业界CAE应用范例、FEMLAB的菜单结构、有限元法简介,接着介绍了8种典型的形函数,然后按专题分别对桁架、梁、膜、板、壳和三维实体运用三重验证的方法进行有限元分析。本书理论阐述透彻,采用的教学方法新颖,适合作为力学、机械、土木、水利等专业本科生和研究生的教材,也可作为上述专业的工程技术人员和教师的参考书。本书特色:在传统的有限元分析教学过程中,大多使用软件包解决一般工程问题。这种教学方法容易使学生只懂得软件操作,不了解软件的理论基础。本书试图通过一些有益的尝试,对原有的有限元分析的教学方法进行一些改进。1.用软件进行数学运算作者认为在有限元分析的教学上,理论基础与软件操作同样重要。本书试图引导学生借助数学软件,解决数学运算与计算问题。使学生不再过分钻研工程数学的解题技巧,转而将大部分精力集中在对其结构性的理解方面,避免为学习理论而在计算上耗费大量时间。2.可进行数学验证以往许多有限元分析课程,为避开数学计算的繁杂,基础理论教完之后,便完全依赖软件包去进行验证。这样,学生便无法深入体验理论与软件之间的紧密关系。而作者认为,利用有限元分析方法验证理论值时,也可以使用数学软件来进行数学验证。数学软件的几行程序,便可抵得上一般软件的上百行程序,可见其效率之高。3.软件包同步验证本书推荐的三重验证教学方法是指,首先利用力学分析计算理论解;然后通过FEA的方法。利用数学分析软件进行理论验证与计算:最后利用软件包进行分析。三者相互验证,学生可同时体验力学分析、有限元理论与软件包之间的交互关系。4.FEMLAB与Mathematica相结合本书综合应用有限元分析的通用软件包FEMLAB与著名的数学软件Mathematica,来进行有限元分析,具有非常好的代表性。 -
C程序设计教程(美)[H.M.迪特尔]H.M.Deitel,(美)[P.J.迪特尔]P.J.Deitel著;薛万鹏等译本书是《计算机科学丛书》之一。本书详细叙述了C程序设计语言,强调用结构化程序设计方法编写程序,自始至终用完整的程序输出范例来演示所讲的概念,内容全面,层次清晰,可作为大专院校学生和计算机编程爱好者的入门与提高教程。 -
C++程序设计实训李龙澍主编编辑推荐:高职高专计算机专业系列教材。本书是与《C++程序设计》配套的实训教材,编制和精选了C++程序设计的习题,并在习题解答中融入了作者多年的教学经验和体会。每章分为两部分,第一部分是精选习题解答,第二部分是实训参考步骤,分别与清华大学出版社出版的“高职高专计算机专业系列教材”《C++程序设计》各章的内容相配合。全书针对高职高专学生的特点,培养读者分析问题和解决问题的能力,力求复杂的概念用简洁的语言描述出来,让读者学完本书后会用C++语言编写实际应用程序。本书适合作为高职高专计算机及相关专业“C++程序设计”课程的辅助教材,也可供各类计算机应用人员学习使用。 -
C++设计新思维(美)Andrei Alexandrescu著;侯捷,於春景译ModernC++Design是一部重要的著作,它从根本上层示了genericpatterns(泛型模式)或patterntemplates(模式模板),并将它们视之为“在C++中创造可扩充设计”的一种功能强大的新方法,这种方法结合了template和patterns,你可能未曾想过,但的确存在。如果你的工作涉及C++设计和编程。那么你应该阅读本书。我极力推荐。——HerbSutter关于C++,还有什么没被说过的?很多,本书证明了这一点——节录自JohnVissides为本书所作的序在ModernC++Design中,Andrei,Alexandrescu为C++程序员开创了一个新天地。在展现非凡创造力和精湛编程技艺的同时,Alexandrescu提供了融合designpatterns(设计模式)、genericprogramming(泛型编程)、C++等在内的尖端设计技术。帮助程序员撰写清晰、灵活、高度可复用的代码。本书提出genericcomponents(泛型组件)的概念,这是一种可复用的设计模板(reusabledesigntemplates),用来产生规范的C++代码,供编译器使用。泛型组件提供了从design到code之间简易而无缝的过渡,产生出更能表达原始设计意图的代码,并支持设计结构的复用只需更动最少量的代码。作者阐释建造泛型组件所需的C++专门技巧和特性。而后针对现实世界中的应用,提供工业强度之泛型组件实现品。对于C++开发人员日常工作中反复遇到的问题,在此进行了深入的探讨,并通过泛型方式实现。内容包括:·高度灵活的policybaseddesign·Partialtemplatespecialization(模板偏特化)·Typelists,一个功能强大、用于型别操控的结构·Visitor、Singleton、Command、Factories等模式(patterns)·Multi-methodengine针对每一个泛型组件,本书都提出了基本问题和设计选择。最后实现其泛型解决方案、此外。本书相关网站http://www.awl.com/cseng/titles/0-201-70431-5提供书中泛型组件的所有实现品,并提供作者发展的一个免费、可下载的C++程序库Loki。Loki几乎可为任何C++项目提供借鉴。本书提供了一组可复用的设计产品─所谓“泛型组件”,以及设计这些组件所需要的技术。这些泛型组件为用户带来的明显好处,集中于程序库方面,而处于更广泛的系统体系结构空间中。本书提供的编程技术和实作品(implementation)所反映的任务和议题,传统上落于设计范畴之中,是编写代码之前必须完成的东西。由于身处较高层次,泛型组件就有可能以一种不同寻常但简洁。易于表达。易于维护的方式,将复杂的体系结构反映到代码中。这里结合了三个要素:设计模式(designpatterns)、泛型编程(genericprogramming)、C++。结合这些要素后,我们获得极高层次的可复用性,无论是横向或纵向。从横向空间来看,少量librarycode就可以实现组合性的、实质上具有无穷数量的结构和行为。从横向空间来看,由于这些组件的通用性,它们可广泛应用于各种程序中。本书极大归功于设计模式(designpatterns)—面临面向对象程序开发中的常见问题时,它是强有力的解决方案。设计模式是经过提炼的出色设计方法,对于很多情况下碰到的问题,它都是合理而可复用的解决方案。设计模式致力于提供深具启发、易于表达和传递的设计词汇。它们所描述的,除了问题(problem)之外,还有久经考验的解法及其变化形式,以及选择每一种方案所带来的后果。设计模式超越了任何一种设计语言所能表达的东西─无论那种语言多么高级。本书遵循并结合某些设计模式,提供的组件可以解决广泛的具体问题。泛型编程是一种典范(paradigm),专注于将型别(type)抽象化,形成功能需求方面的一个精细集合,并利用这些需求来实现算法。由于算法为其所操作的型别定义了严格、精细的接口,因此相同的算法可以运用于广泛的型别集(awidecollectionoftypes)。本书提供的实作品采取泛型编程技术,以最小代价获得足以和手工精心编写的代码相匹敌的专用性。高度简洁和效率。C++是本书使用的唯一工具。在本书中,你不会看到漂亮的窗口系统。复杂的网络程序库或灵巧的日志记录(logging)机制。相反的,你会发现很多基础组件,这些组件易于实现以上所有系统(甚至更多)。C++具有实现这一切所需要的广度,其底层的C内存模型保证了最原始效率(rawperformance),对多态(polymorphism)的支持成就了面向对象技术,templates则展现为一种令人难以置信的代码生成器。Templates遍及本书所有代码,因为它们可以令用户和程序库之间保持最密切的协作。在遵循程序库约束的基础上,程序库的用户可以完全控制代码的生成方式。泛型组件库的角色在于,它可以让用户指定的型别和行为,与泛型组件结合起来,形成合理的设计。由于所采技术之静态特性,在结合和匹配相应组件时,产生的错误通常在编译期便得以发现。本书最明显的意图在于创建泛型组件,这些组件预先实现了设计模块,主要特点是灵活、通用、易用、泛型组件并不构成framework。实际上它们采用的作法是互补性的,虽然framework定义了独立的classes,用来支持特定的对象模型,但泛型组件(s)是轻量级设计工具,互相独立,可自由组合和匹配。实现frameworks时泛型组件可带来很大帮助。 -
Exceptional C++中文版(美)Herb Sutter著;卓小涛译;卓小涛译编辑推荐:深入C++系列。本书通过实例讲述如何使用标准C++进行软件工程设计。你喜欢解决棘手的C++问题和疑惑吗?喜欢编写健壮的和可扩展的代码吗?那么可以花点儿时间来研究一些费力的C++设计和编程问题。本书中讲述的疑惑和问题不仅仅会使你感兴趣,而且还会帮助你成为一名优秀的C++程序员。书中的很多问题都来自于Internet新闻组comp.lang.C++.moderated和GotW特性,并且遵照官方的ISO/ANSIC++标准进行扩展和更新。 -
数据结构与STL(美)William J.Collins著Authorized English language reprint edition jointly published by McGraw-Hill Education Co.and China Machine Press.This edition is authorized sale in the People's Republic of China only,excluding Hong Kong, Macao SAR and Taiwan. Unauthorized export of this edition is a violation of the Copyright Act.Violation of this Law is subject Civil and Criminal Penalties.
