本书是一本全面、深入解析与算法竞赛有关的数据结构、算法、代码的计算机教材。 本书包括十个专题: 基础数据结构、基本算法、搜索、高级数据结构、动态规划、数论和线性代数、组合数学、计算几何、字符串和图论。本书覆盖了绝大多数算法竞赛考点。 本书解析了算法竞赛考核的数据结构、算法; 组织了每个知识点的理论解析和经典例题; 给出了简洁、精要的模板代码; 通过明快清晰的文字、透彻的图解,实现了较好的易读性。 本书的读者对象是参加算法竞赛的中学生和大学生、准备面试IT企业算法题的求职者、需要提高算法能力的开发人员,以及对计算机算法有兴趣的广大科技工作者。
本书深入探讨了软件设计中的核心问题:如何将复杂的软件系统分解为可以相对独立实现的模块(例如类和方法),从而降低其复杂性并提高开发效率。本书首先介绍了软件设计中的基本问题,即复杂性的本质。其次,讨论了有关如何处理软件设计过程的 哲学 问题,如通用设计的重要性、与《代码整洁之道》中设计哲学的对比,以及如何将重要的东西和不重要的东西区分开等内容。最后,总结了在软件设计过程中应遵循的一系列设计原则,以及一系列识别设计问题的警示信号。 本书适合软件工程师、计算机科学专业的学生、教育者、对软件设计和开发感兴趣的自学者和技术管理者阅读。通过应用本书中的思想,读者可以最大限度地降低大型软件系统的复杂性,从而更快地以更低的成本编写软件,并构建更易于维护和增强的系统。
本书由CCF组织富有程序设计教学经验的钻石教练编写。通过详实的例题,循序渐进地介绍中学生计算机程序设计的各种知识及其应用,内容包括树及其应用、二叉树及其应用、集合与并查集、图及其应用、二分图及其应用、散列表及其应用、排序及其应用、基础算法及其应用、动态程序设计、数学在程序设计中的应用等,旨在普及计算机科学教育,培养中学生的计算思维能力。
本书共分10章,首先介绍了汽车电子控制系统以及AUTOSAR 规范的基本概念;之后以AUTOSAR方法论为线索,通过示例开发过程介绍,全面展现了基于AUTOSAR工具链完成符合AUTOSAR规范的车用控制器软件开发的具体流程与方法;*后,剖析了AUTOSAR对道路车辆功能安全ISO 26262标准的支持情况,并对AUTOSAR 与信息安全以及Adaptive AUTOSAR平台进行了介绍。本书以通俗易懂的语言和形象的图解展现了AUTOSAR中一些复杂的概念问题,精心设计的示例亦旨在以开发者的视角深度剖析AUTOSAR方法论的具体实施过程。本书可作为汽车电子相关专业高年级本科生和研究生的参考书,也可作为汽车电子行业软件工程师学习参考的资料。
你知道你不想重新发明轮子,因此你指望设计模式能帮上忙 那些面对相同软件设计问题的人所学到的教训。有了设计模式,你就可以借助他人的实践和经验,把时间花在一些更有挑战性、更有趣的事情上。本书展示了重要的模式;何时使用、为什么使用这些模式;如何在自己的设计中应用这些模式;模式所基于的面向对象设计原则。无数开发人员通过这本书提升了面向对象设计技能,来加入他们的队伍吧。
《有趣的矩阵:看得懂又好看的线性代数》分别从中国古代数学思想、益智游戏、企业管理、计算机科学、博弈论等角度出发,介绍了线性代数和矩阵理论中的相关概念和理论在上述领域的应用。通过阅读《有趣的矩阵:看得懂又好看的线性代数》,读者对线性代数在实际问题中的应用会有更加直观的了解,有助于激发读者对线性代数的学习兴趣和学习热情。 《有趣的矩阵:看得懂又好看的线性代数》分为8章,涵盖的主要内容有线性方程组的计算、益智数字游戏中的矩阵、经营管理中的矩阵、矩阵与图片美化、计算机绘画中的矩阵、矩阵与密码设计、互联网中的矩阵、矩阵与博弈论。 《有趣的矩阵:看得懂又好看的线性代数》内容通俗易懂、生动有趣,特别适合中学生、大学生及各年龄层的数学爱好者作为线性代数入门读物使用。另外,《有趣的矩阵:看得懂又
《大话软件工程 需求分析与软件设计》面向从事软件分析与设计相关工作的读者。《大话软件工程 需求分析与软件设计》的重点是在软件工程中增加了业务设计和应用设计的部分,提出了软件设计工程化的模式,支持进行定性、定量的软件项目管理,是一本实操型的软件工程工具书。全书共分为6篇22章,分别介绍了业务分析与设计的理论、需求工程的调研与分析方法、业务的分析与设计方法、应用设计方法、业务用例和应用用例的编写方法、需求和设计的配套模板、规格书标准等。 《大话软件工程 需求分析与软件设计》可作为软件工程师(包括需求、设计、开发、实施)、产品/项目经理、管理咨询师的实用工具书、培训机构的设计资格培训教材,以及普通高等院校管理信息专业、计算机专业学生学习软件设计方法的参考书。
本书以宏晶科技公司STC8系列增强型51单片机作为讲述核心,深入浅出地介绍该系列单片机片内资源及应用,其内容可在STC8A、STC8F、STC8C、STC8G及STC8H等系列单片机中应用。本书以各种巧例解释相关原理,以资源组成构造学习脉络,选取主流开发工具构建开发环境,利用实战项目深化寄存器理解,注重 学 与 用 的结合,帮助读者朋友们快乐入门、进阶,筑牢基础,将相关理论知识应用到实际产品研发之中。 本书根据STC8系列单片机的资源脉络及初学者的学习需求,按照梯度设定22章,从内容组成上分为 无痛入门基础篇 和 片内资源进阶篇 。 无痛入门基础篇从第1章到第8章,主要讲解单片机的发展、学习方法、STC8系列单片机家族成员、软/硬件开发环境搭建及调试、I/O资源使用和配置、LED器件控制、A51和C51语言开发差异及特点、常见字符/点阵型液晶模块的驱动、独立按
本书分为软件基础入门与应用实例两大部分,全书共计17章节。1~11章节为软件基础入门,其内容以热仿真工作流程、建立模型、网格划分、求解计算、结果处理、优化设计和仿真模型校核为主。12~17章节为软件应用实例部分,其内容主要由BGA封装芯片、户外通信机柜、数据中心、智能手机、服务器六个应用实例组成。本书内容丰富、讲解详尽,在介绍FloTHERM软件的同时,也注重相关背景原理的阐述和软件实际应用的注意事项。其中软件基础内容多来自作者的多年积累和整理。仿真模型的校准作为热仿真分析的重中之重,本书中也进行了细致的阐述。应用实例内容涵盖软件不同的应用领域,对于软件使用者而言,具有很强的实际指导意义。本书可以作为电子设备热仿真工作者、热设计工程师和FloTHERM软件使用者的自学教材和参考书,同时也可以作为高等院校学
如何量化用户体验对有效提高产品的使用质量至关重要。本书详尽地介绍了如何有效且可靠地收集、分析和呈现典型的用户体验度量数据:操作绩效(正确率等)、用户体验问题(频率和严重程度)、自我报告式的满意度及生理/行为数据(眼动追踪等)。同时对 综合性量化度量数据 等问题进行了专门介绍,而且结合案例等形式对当前与用户体验相关的新内容(如用户体验对NPS的影响)进行了说明。本书内容翔实,是一本值得用户体验从业人员研读的指导性书籍,同时也可以作为相关课程的参考教材。
《敏捷软件开发(珍藏版)》作为敏捷软件开发的里程碑之作,重点介绍了敏捷软件开发的原则、模式和实践。全书共6部分30章4个附录,以场景化方式阐述了什么敏捷软件开发的核心,强调了工程实践是敏捷软件开发的重要基石。本书的写作风格诙谐幽默,巧妙地通过通俗易懂和画面感十足的的表述漫画来帮助读者理解可能枯燥晦涩的专业技术要点。 《敏捷软件开发(珍藏版)》适合真正想要通过敏捷方式来提升软件开发技能以及及时交付软件价值的所有读者阅读和参考。
短短几年时间, Scrum 跃升为敏捷*方法,在全球各地得以普遍应用。针对如何用好、用巧这个看似简单的框架,本书以通俗易懂的语言、条理清晰的脉络阐述和提炼出 Scrum 的精髓。全书共 4 部分 23 章,阐述了七大核心概念: Scrum 框架,敏捷原则,冲刺,需求和用户故事,产品订单,估算与速率,技术债;五大角色:产品负责人, ScrumMaster ,开发团队, Scrum 团队结构,经理: Scrum 规划原则及四大规划活动:多层次规划、产品组合规划、产品规划和长期规划;冲刺四大活动:规划、执行、评审和回顾。 本书取自作者十多年的实践经验,对员工个体和管理层都具有重要的指导和参考意义,可以帮助企业导入 Scrum 方法实现敏捷转型,从而在动态的商业环境中以积极的心态拥抱变化,做出优秀、卓越的产品,成就创业、守业、常青基业。
在软件架构中没有哪个决定是轻而易举的。相反,有许多艰难的部分,要么是难题,要么是缺少实践,这迫使你在各种妥协中做出选择。通过本书,你将学会如何批判性地思考分布式体系结构的利弊。 软件架构老兵和实践顾问Neal Ford、Mark Richards、Pramod Sadalage、Zhamak Dehghani讨论了选择适合架构的策略。全书交织着一群虚构的技术专业人员(Sysops Squad)的故事,他们研究了从如何确定服务粒度、管理工作流和编排、管理和解耦合约、管理分布式事务到如何优化可扩展性、弹性和性能等操作特性的一切问题。 本书通过关注常见的问题,提供了一些技术,帮助你在面对架构问题时进行权衡。
本书以一个Kubernetes工程师的视角,全面系统地介绍Kubernetes常见的知识点、企业应用实践及运维管理方法。本书共分18章,第1、2章介绍如何快速搭建高可用的Kubernetes集群;第3~7章介绍Docker的基础和镜像的制作优化,以及Kubernetes的基础概念(Master、Node和Pod)、核心调度资源(Deployment、StatefulSet、DaemonSet、CronJob)、服务发布(Service和Ingress)和配置管理(ConfigMap和Secret)。第8~11章主要介绍Kubernetes的持久化存储、动态存储、CSI、高级调度(容忍、污点和亲和力)、服务质量、权限管理、Kubernetes资源配额管理。第12、13章主要介绍云原生存储、中间件容器化、Operator和Helm的使用。第14~16章主要介绍针对Kubernetes的日志收集(EFK)、监控告警(Prometheus和Grafana)、生产级服务发布Ingress的使用。第17章主要介绍基于Kubernetes、Jenkins、Harbor、GitLab等工具建设生产级的DevOps平台
本书主要讲述如何自己动手制作( DIY )一个微型多旋翼飞行器。书中内容主要分四篇:篇主要介绍飞行器的相关基础知识,让读者对多旋翼飞行器有个感性的认知;第二篇重点介绍飞行器的硬件平台,包括模块详细解说、实物组装、固件下载方法和飞行器的操作说明等;第三篇重点介绍飞行器的软件开发环境、软件各个功能部分的讲解和各个模块部分的连接、飞控系统的核心算法等;第四篇介绍多旋翼飞行器的拓展,控制操作入门和技巧,以及其在不同行业的应用。 本书配套资料里面包含了微型多旋翼飞行器的代码,同时也包含遥控器代码。这些代码均有详细的注释,读者可参考它设计自己的固件,亦可通过书中介绍的方法,将编译后的代码下载到飞行器和遥控器中来体验飞行。 本书主要针对未入门而有强烈意愿DIY的飞行器爱好者和即将参加赛事的大学生朋友
本书分为两大部分,其中第一部分 基础篇 包括第1~11章,第二部分 进阶篇 包括第12~18章。Unity 3D初学者在学习第一部分后,完全可以制作出属于自己的游戏。但是能做出来不代表做得好,这里的 好 主要是指游戏性能高以及开发难度大。从商业游戏的角度来说,必须做到这两点,所以第二部分主要讲解Unity 3D的性能与原理。除第1章外,书中的每一章都包含丰富的示例和源代码,它们是非常宝贵的实战经验,可以直接应用在实际开发中。
《Unity手机游戏开发:从搭建到发布上线全流程实战》将以一款开放世界类游戏的实践过程为主线,为读者呈现从零开始上线一款游戏的实践路线、游戏引擎Unity的开发模式,以及游戏开发的核心框架。 《Unity手机游戏开发:从搭建到发布上线全流程实战》共分为3篇,第1篇是场景搭建篇,第2篇是脚本开发篇,第3篇是发布上线篇。第1篇包含第1章和第2章,主要介绍在Unity中如何创建一个游戏项目,如何搭建一款游戏的场景和界面。第2篇包含第3章到第5章,主要介绍一款游戏的核心模块,即游戏控制、角色动画和核心玩法,同时实践一款游戏《小猪奇奇》的完整开发流程。第3篇包含第6章到第8章,主要介绍游戏的移动端发布流程,同时对游戏进行测试与完善,终把书中的游戏案例打造成一款符合上线标准的游戏。
本书系统地讲述了智能现象的发展历史。全书共分为9 章。第1 章介绍本书的写作背景、智能的不同定义、智能现象问题、智能现象新的假说;第2 章介绍宇宙从无到有(物质、能量和空间)、不安分的宇宙、改变以稳定宇宙等内容;第3 章介绍物理学中的智能,包括美丽的物理世界、引力智能、引力和暗能量、熵引力、最小作用量原理、量子隐形传态等内容;第4 章介绍化学中的智能,包括化学发展的简要历程、耗散结构、熵增、最大熵产生;第5 章介绍生物学中的智能,包括生命的定义、生命为什么存在、微生物的智能、植物的智能、动物的智能;第6 章介绍人类的智能,包括大脑中的新皮质、人类特殊的思维方式、关于大脑的理论(贝叶斯大脑假说、高效编码原理、神经达尔文主义、自由能最小原理),以及信息过载与信息茧房;第7 章介绍机器的智能,包括1950
对于刚刚成为软件工程师的新手来说,知道如何编写代码只是成功了一半。你可能很快就会发现,学校并没有教授在现实世界中至关重要的技能和工作中必要的流程。本书恰恰填补了这一环节,它是作者十多年来在大型公司指导初级工程师工作的教程,涵盖软件工程的基础知识和best实践。 本书第1~2 章讲解当你在公司开启你的职业生涯时会发生什么;第3~11 章会扩展你的工作技能,教你如何使用现有代码库、解决和防止技术债、编写生产级软件、管理依赖关系、有效地测试、评审代码、交付软件、处理On-Call 时的事故和构建可演进的架构等;剩余章节涵盖管理能力和职业阶梯的提升等相关内容,例如敏捷计划、与管理者合作以及成长为资深工程师的必经之路。本书中非常重要的一部分内容是教你如何应对糟糕的管理,以及如何调整自己的节奏。 本书内容不仅
本书深入浅出地介绍非线性有限元计算软件OpenSees的基本建模与编程的方法,针对初学者设计了一系列循序渐进的算例,介绍编译和添加新材料方法,帮助使用者快速掌握OpenSees用法与编程.
近年来,越来越多的游戏开发爱好者开始关注Unity引擎,相比于其他引擎,Unity有强大的资源商店和跨平台能力,而且容易上手,目前已成为游戏开发行业的主流选择,受到了大量开发者的青睐。 《从零开始学Unity游戏开发:场景 角色 脚本 交互 体验 效果 发布》共有10章内容,以认识Unity引擎开始,从0到1突破,循序渐进地介绍了Unity游戏开发的方方面面。《从零开始学Unity游戏开发:场景 角色 脚本 交互 体验 效果 发布》采用知识点讲解、经验技巧与相应的动手练习相结合的方式,将一个完整的游戏案例以章节任务的形式贯穿其中,系统地讲解如何从基本的熟悉Unity界面操作开始,一步步搭建起游戏场景,让其逐渐丰富生动起来,并能与玩家进行交互,然后添加UI界面完善游戏流程,增强游戏的画面效果和视听体验及游戏的真实性,终形成一款相对完整的成品游戏,
照由浅入深、循序渐进的方式,讲解软件的新特性和操作方法,使读者能够快速掌握SolidWorks软件的设计技巧。 对于SolidWorks软件的基础应用,《SolidWorks 2022完全实战技术手册》内容讲解得非常详细。通过实例和方法的有机统一,使本书内容既有操作上的针对性,也有方法上的普遍性。《SolidWorks 2022完全实战技术手册》图文并茂,讲解深入浅出、繁就简、贴近工程,把众多专业和软件知识点有机地融合到每章的具体内容中。《SolidWorks 2022完全实战技术手册》的体例结构生动而不涩滞,内容编排张驰有度,实例叙述实用而不浮烦,能够开拓读者思路,提高读者阅读兴趣,使其掌握方法,提高对知识综合运用的能力。 通过对《SolidWorks 2022完全实战技术手册》内容的学习、理解和练习,能使读者真正具备SolidWork设计者的水平和素质。《SolidWorks 2022完全实战技术手册》既可