Java语言是国内外广泛使用的计算机程序设计语言,是高等院校相关专业重要的基础课程。它具有功能丰富、使用灵活方便、应用面广、目标程序效率高、可移植性好等优点。20世纪90年代以来,Java语言迅速在全世界得到推广普及,是目前世界上优秀的程序设计语言之一。
本书是作者为适应当前教育教学改革的创新要求,更好地践行语言类课程注重实践教学与创新能力培养的要求而组织编写的。本书融合同类图书的优点,采取创新方式,精选300个趣味性、实用性强的应用实例,从不同难度、不同类型和不同数据结构对Java语言实际算法进行总结,希望对教育教学起到抛砖引玉的作用。
本书的主要内容和素材来自于各大互联网公司面试算法、LintCode、LeetCode、九章算法和作者所在学校近几年承担的科研项目成果。作者所指导的研究生在研究过程中对学习和应用的算法进行了总结,学生不仅学到了知识,提高了能力,而且为本书提供了第一手素材和相关资料。
本书内容由总到分,先提出问题后实践,将算法描述与代码实现相结合,可以作为从事网络开发和算法实现专业人员的技术参考书、大学信息与通信工程及相关专业的本科生的Java算法实现教材、程序员的算法提高手册,也可以为算法分析、算法设计、算法实现者提供帮助。
本书的编写得到了教育部电子信息类专业教学指导委员会、信息工程专业国家第一类特色专业建设项目、信息工程专业国家第二类特色专业建设项目、教育部CDIO工程教育模式研究与实践项目、教育部本科教学工程项目、信息工程专业北京市特色专业建设、北京市教育教学改革项目和北京邮电大学教育教学改革项目(2022SJJXA01)的大力支持,在此表示感谢!
由于作者经验与水平有限,书中疏漏及不当之处在所难免,衷心希望各位读者多提宝贵意见,以便再版时进一步修改和完善。
李永华于北京邮电大学
2023年9月