2020年暑假编程实践:leetcode中国编程练习精选

需积分: 14 1 下载量 191 浏览量 更新于2024-10-26 收藏 16KB ZIP 举报
资源摘要信息:"leetcode中国-Programing-practice-of-summer-vacation-in-2020:2020年暑假编程实践" 知识点一:C语言基础语法 在2020年的暑假编程实践中,首先需要掌握C语言的基础语法,包括数据类型、变量、运算符、控制语句、函数等。这些是编程的基石,对于后续的算法实现至关重要。 知识点二:基础算法实现 实践活动中提到了需要通过编程实现的几个基础算法: 1. 欧几里得算法求最大公约数 2. 筛法求素数 3. 康托展开与逆康托展开 4. 同余定理 5. 高次方求模 这些基础算法的掌握对于理解和学习更高级的算法是非常有帮助的。 知识点三:几何计算方法 在编程实践中,还要求学习和实现一些计算几何的方法,如: 1. 三角形面积计算(海伦公式) 2. 三点顺序判断 3. 点与线段、矩形、圆等几何元素的关系判断 知识点四:数据结构练习 针对数组、链表、字符串等数据结构,需要完成大量的题目练习,以加强对这些基本数据结构操作的理解和应用能力。特别是对于数组和链表,至少要完成20道题目,对于字符串至少需要完成10道题目。 知识点五:排序与搜索算法 在算法部分,实践要求熟练掌握至少20种算法题目,包括但不限于: 1. 二分查找法 2. 各种基本排序算法:冒泡排序、插入排序、选择排序、快速排序 这些算法是解决实际问题的基础工具,对于理解复杂数据结构和高级算法有重要作用。 知识点六:常用函数和算法 除了上述算法,还需要学习一些常用的函数使用方法,并且至少完成10道字符串处理的题目。同时,掌握KMP算法也是重要的,它是处理字符串问题的一种有效方法。 知识点七:高级算法概念 实践还要求学习一些高级的算法概念,包括: 1. 基本算法:递归、贪心算法、动态规划(最大子串和、最长公共子序列、最长单调递增子序列) 2. 图论:二分图的最大匹配问题,例如匈牙利算法 3. 计算几何:求解多边形面积、重心、凸包等 4. STL:了解标准模板库,学习vector和list的用法 知识点八:编程平台与资源 提及的“力扣”和“牛客网”是学习编程的在线平台,提供了大量的编程题目供练习。在暑假编程实践期间,不需要在这两个平台上寻找C语言基础语法相关的题目,而是要专注于通过实际编码来掌握这些内容。 综上所述,2020年暑假编程实践要求学生通过大量的题目练习,全面提高编程能力和解决算法问题的能力。涵盖了从基础语法到复杂算法的全面知识点,重点在于实践操作,从而提升个人的编程水平。