学年(2023-2024-1)学号(20231311)《计算机基础与程序设计》第7周学习总结

发布时间 2023-11-12 20:52:26作者: 20231311吴冠清

2023-2024-1 20231311《计算机基础与程序设计》第7周学习总结

作业信息

这个作业属于哪个课程 2023-2024-1-计算机基础与程序设计
这个作业要求在哪里 2023-2024-1计算机基础与程序设计第七周作业
这个作业的目标 1.学习计算机科学概论第8章 并完成云班课测试2.《C语言程序设计》第6章并完成云班课测试
作业正文 https://i.cnblogs.com/posts/edit;postId=17827716#postBody

教材学习内容总结

计算机科学概论第8章:
8.1 抽象数据类型 (Abstract Data Types, ADTs)

抽象数据类型是一种数据结构的概念,它定义了一组数据以及与这些数据相关的操作。它们允许将数据的表示和操作分离开来,以提高代码的模块化性和可维护性。
8.2 栈 (Stack)

栈是一种线性数据结构,遵循后进先出 (Last-In-First-Out, LIFO) 原则。它支持在顶部进行数据插入和删除操作,类似于物理上的一叠盘子。
8.3 队列 (Queue)

队列是另一种线性数据结构,遵循先进先出 (First-In-First-Out, FIFO) 原则。它支持在一端插入数据,另一端删除数据,类似于排队等待的现实场景。
8.4 列表 (List)

列表是一种通用的数据结构,它可以包含任意数量的元素,并支持插入、删除和搜索操作。列表可以实现为动态数组或链表等不同的数据结构。
8.5 树 (Tree)

树是一种非线性数据结构,其中有一个根节点,它可以有零个或多个子节点。每个子节点也可以有子节点,形成层级结构。树结构用于许多领域,包括计算机科学中的数据存储和检索。
8.5.1 二叉树 (Binary Tree)

二叉树是一种特殊的树结构,每个节点最多有两个子节点:左子节点和右子节点。这种结构在搜索树、表达式树等应用中非常有用。
8.5.2 二叉检索树 (Binary Search Tree, BST)

二叉检索树是一种二叉树,具有特定的排序性质。左子树的所有节点都小于根节点,右子树的所有节点都大于根节点。这种排序使得数据的搜索和插入操作高效。
8.5.3 其他操作

8.5.3 节可能包括有关树的其他操作,例如遍历树、删除节点、平衡二叉树等方面的内容。
8.6 图 (Graph)

图是一种非线性数据结构,它由节点和边组成,用于表示各种关系和网络结构。图可以是有向或无向的,可以有权重的边,用于建模复杂的关系。
8.6.1 创建图

创建图通常涉及定义节点和边以表示问题领域中的关系。这一节可能包括如何初始化图数据结构的相关内容。
8.6.2 图算法

图算法包括遍历图、寻找最短路径、拓扑排序、最小生成树等。这些算法用于解决各种与图相关的问题,如路线规划、网络分析等。
8.7 子程序 (Subprograms)

子程序是可重复使用的代码块,它们可以接受参数并执行特定任务。这一节可能介绍如何定义和调用子程序。
8.7.1 参数传递

参数传递是指如何将值传递给子程序,以便子程序可以使用这些值执行操作。可能包括值参数和引用参数的讨论。
8.7.2 值参数与引用参数

这一节深入探讨了不同参数传递方式的区别,包括传值和传引用,以及它们对程序行为的影响。
《C语言程序设计》第6章:
for 循环:

for 循环是一种常用的循环结构,通常用于已知循环次数的情况。
语法:for (初始化; 条件; 更新) { 循环体 }
while 循环:

while 循环用于在条件为真的情况下重复执行一组语句。
语法:while (条件) { 循环体 }
do-while 循环:

do-while 循环是一种后测试循环结构,至少会执行一次循环体,然后在条件为真时重复执行。
语法:do { 循环体 } while (条件);
循环控制语句:

break语句用于跳出循环,终止循环的执行。
continue语句用于终止当前迭代并进入下一次循环迭代。
嵌套循环:

C语言允许在一个循环内嵌套另一个循环,形成嵌套循环结构。

基于AI的学习

显示
显示
显示
显示
显示
显示

代码调试中的问题和解决过程

问题:scanf语句使用失败
问题解决方案:1.变量初始化: 确保在使用 scanf 之前初始化你的变量,以防止未定义的行为。
2.格式化字符串不匹配: scanf 的第一个参数是格式化字符串,它指定了你期望输入的格式。如果格式化字符串与实际输入不匹配,可能导致输入失败。确保格式化字符串正确匹配输入。

其他(感悟、思考等,可选)

这一周是我在OJ平台上做题数量最多的一次,感觉进步很大。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 100 /100 1/1 20/20
第二周 200/300 1/2 18/38
第三周 200/500 1/3 22/60
第四周 300/800 1/4 30/90
第五周 600/1400 1/5 40/130
第六周 900/2100 1/6 40/170
第七周 800/2900 1/7 40/210