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

发布时间 2023-10-29 22:55:05作者: 20231311吴冠清

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

作业信息

这个作业属于哪个课程 2023-2024-1-计算机基础与程序设计
这个作业要求在哪里 2022-2023-1计算机基础与程序设计第五周作业
这个作业的目标 下载Pep/9虚拟机,学习机器语言与汇编语言,算法与伪代码等
作业正文 https://i.cnblogs.com/posts/edit;postId=17796503#postBody

教材学习内容总结

第6章:数据结构和算法

1.数据结构概述

数据结构是一种组织和存储数据的方式,可以帮助我们有效地操作和管理数据。
常见的数据结构包括数组、链表、栈、队列、树和图。
2.算法基础

算法是解决问题的一组有序步骤。
算法的效率通常通过时间复杂度和空间复杂度来衡量。
3.基本数据结构

数组:存储相同类型的元素,通过索引进行访问。
链表:由节点组成,节点包含数据和指向下一个节点的指针。
栈:后进先出(LIFO)的数据结构,用于处理函数调用和表达式求值。
队列:先进先出(FIFO)的数据结构,用于任务调度和缓冲区管理。
4.高级数据结构

树:包括二叉树、平衡树、堆等,用于组织数据以提高查找和插入效率。
图:用于表示关系型数据,如社交网络或路由图。
散列表:用于实现键-值映射,提高数据的检索速度。
5.常见算法

排序算法:包括冒泡排序、选择排序、插入排序、快速排序等。
搜索算法:包括线性搜索、二分搜索、深度优先搜索(DFS)和广度优先搜索(BFS)。
动态规划:用于解决优化问题,如背包问题。
贪心算法:用于求解最优化问题,通过每一步选择最佳选项来达到最终目标。
6.算法复杂度分析

时间复杂度:表示算法执行所需的时间,通常用大O符号表示。
空间复杂度:表示算法执行所需的内存空间。
7.算法设计策略

分治法:将问题分解成子问题,然后将子问题的解合并以获得原始问题的解。
动态规划:将问题分解成子问题,然后利用子问题的解构建原问题的解。
贪心算法:通过每一步选择最佳选项,构建最终解。
1.for语句如何使用
《C语言程序设计》第4章
1.顺序结构

顺序结构是一种简单的程序执行方式,按照代码的顺序一行一行地执行。
在C语言中,语句默认按照它们出现的顺序执行。
2.选择结构

选择结构用于根据条件选择不同的执行路径。
在C语言中,最常用的选择结构是if语句,可以执行不同的代码块,具体取决于条件的真假。
3.循环结构

循环结构允许程序多次执行相同或类似的代码块。
C语言提供了多种循环结构,包括while循环、do-while循环和for循环。
4.分支结构

分支结构用于在不同的情况下执行不同的代码块。
在C语言中,可以使用switch语句来实现分支结构,根据不同的case标签执行不同的代码块。
5.控制结构的嵌套

控制结构可以嵌套在其他控制结构内部,以实现更复杂的逻辑。
嵌套的if语句、循环和分支结构可以构建更复杂的控制逻辑。
6.控制结构的应用

控制结构是编写有组织、可控制和有条件执行的程序的关键。
通过合理应用控制结构,可以实现各种计算和决策任务。
7.错误处理

错误处理是在程序中处理异常情况的重要部分。
C语言提供了错误处理机制,如if语句和try-catch块,以处理运行时错误。

教材学习中的问题和解决过程

问题1:C语言中for语句用法
问题1解决方案:查询材料,了解了
for(<初始化>;<条件表达式>;<控制变量增量>)
{
循环体语句;
}
C语言中,for语句通常适用于循环次数已知的场景。其初始化部分通常是一个赋值语句,一般用于循环控制变量的初始化,当然也可以给其它变量初始化。条件表达式,主要是一个关系表达式,用于控制循环结束;控制变量增量,主要是循环变量的自加,步长通常为1(如i++),也可根据需要设定(如,循环控制变量i的增量可以设置为2,i=i+2;)。
其程序执行过程如下:

  1. 首先执行初始化操作(仅在循环开始时执行一次);
  2. 进行条件表达式计算,若为真,则执行步骤3);否则执行步骤6);
  3. 执行循环体语句;
  4. 控制变量增量计算;
  5. 重复执行步骤2)到步骤4);
  6. 结束循环。

基于AI的学习

显示
显示
显示
显示
显示

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

显示
显示
显示

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

这一周是我进步最大的一周,我认为不断实践(写代码)对于学习是最重要的。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 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/1000 1/5 40/130