首页 > 编程语言 >2024-2025-1 20241304 《计算机基础与程序设计》第6周学习总结

2024-2025-1 20241304 《计算机基础与程序设计》第6周学习总结

时间:2024-11-03 23:00:27浏览次数:1  
标签:总结 递归 复杂度 2024 2025 算法 查找 20241304 排序

2024-2025-1 20241304 《计算机基础与程序设计》第6周学习总结

作业信息

|这个作业属于哪个课程|<[2024-2025-1-计算机基础与程序设计](https://www.cnblogs.com/rocedu/p/9577842.html#WEEK05)|>
|-- |-- |
|这个作业要求在哪里|<作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)|
|这个作业的目标|<掌握一下内容:
Polya如何解决问题
简单类型与组合类型
复合数据结构
查找与排序算法
算法复杂度
递归
代码安全>|
|作业正文|...https://www.cnblogs.com/xiaoyuanyuan999/p/18524161 |

教材学习内容总结

计算机科学概论第七章内容总结
《计算机科学概论》第七章主要内容总结

一、Polya如何解决问题

  • 包括提出问题、寻找熟悉的情况、分治法等内容。通过这些步骤构建算法来解决计算机问题,最后对算法进行测试总结。整体是围绕如何通过一系列策略与步骤从问题出发到得出解决方案的过程。

二、简单类型与组合类型

  • 简单类型:是构建更复杂数据类型的基础单位。例如基本的数据类型(如整数、字符等),它们各自具有简单明确的定义和操作方式。
  • 组合类型:由简单类型组合而成,能够表达更复杂的信息结构,是对简单类型在功能和表达能力上的扩展。

三、复合数据结构

  • 复合数据结构由多个简单数据类型或者其他复合数据结构组合而成。像数组(存储相同类型的元素序列)、结构体(可包含不同类型的成员)等都是常见的复合数据结构,它们为组织和处理复杂数据提供了有效的方式。

四、查找与排序算法

  • 查找算法
    算法名称 特点
    顺序搜索 按顺序依次查找元素,适用于无序数据,简单但效率低,在数据量较大时耗时较长。
    有序数组中的顺序搜索 数据预先排序后进行顺序查找,可利用数据有序的特性在一定程度上提高查找效率。
    二分检索 针对有序数据,每次比较中间元素,根据比较结果缩小查找范围,查找效率较高,时间复杂度为 $O(\log n)$。
  • 排序算法
    算法名称 特点
    选择排序 每次选择未排序部分的最小(大)元素放到已排序部分末尾,简单但效率相对较低,时间复杂度为 $O(n^2)$。
    冒泡排序 通过相邻元素比较和交换将最大(小)元素逐步“冒泡”到正确位置,时间复杂度为 $O(n^2)$。
    插入排序 将未排序元素插入到已排序部分合适位置,时间复杂度为 $O(n^2)$,在部分有序数据情况下效率较高。

五、算法复杂度

  • 算法复杂度分为时间复杂度和空间复杂度。时间复杂度表示算法运行时间与输入规模的关系,如上述排序算法中的 $O(n^2)$ 和二分检索的 $O(\log n)$。空间复杂度衡量算法执行过程中所需额外空间与输入规模的关系,不同算法在时间和空间复杂度上有不同的权衡。

六、递归

  • 递归是函数调用自身的机制。包含递归阶乘、递归二分检索、快速排序等递归算法示例。递归函数需要有明确的递归终止条件(如递归阶乘中当 $n = 0$ 或 $n = 1$ 时返回1),以及递归调用步骤(如 $n! = n\times(n - 1)!$)。递归在处理具有递归结构的数据(如树结构)或问题时很有效,但不当使用可能导致栈溢出等问题。

七、代码安全

  • 搜索结果未明确提及代码安全相关的针对上述内容的详细总结内容,无法准确给出相关总结。

基于AI的学习


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

  • 问题1:嵌套循环不会写
  • 问题1解决方案:画出了程序结构图来帮助自己思考
  • 问题2:阶乘运算效率低
  • 问题2解决方案:减少变量
  • ...

标签:总结,递归,复杂度,2024,2025,算法,查找,20241304,排序
From: https://www.cnblogs.com/xiaoyuanyuan999/p/18524161

相关文章

  • 学期2024-2025-1 学号20241424 《计算机基础与程序设计》第7周学习总结
    学期2024-2025-1学号20241424《计算机基础与程序设计》第7周学习总结作业信息|这个作业属于2024-2025-1-计算机基础与程序设计)||-- |-- ||这个作业要求在哪里|https://www.cnblogs.com/rocedu/p/9577842.html#WEEK01||这个作业的目标|参考上面的学习总结模板,把学习过程通过......
  • 2024-三叶草安全技术小组第十五届"极客大挑战" wp
    Crypto1.凯撒加密YEI{CKRIUSK_ZU_2024_MKKQ_INGRRKTMK}6位SYC{WELCOME_TO_2024_GEEK_CHALLENGE}2.RSA原文:fromCrypto.Util.numberimportbytes_to_long,getPrimefromsecretimportflagp=getPrime(128)q=getPrime(128)n=p*qe=65537m=bytes_to_long(fla......
  • 2024-2025-1 20241327 《计算机基础与程序设计》 第六周学习总结
    作业信息|2024-2025-1-计算机基础与程序设计)||--|-|2024-2025-1计算机基础与程序设计第六周作业)||快速浏览一遍教材计算机科学概论(第七版),课本每章提出至少一个自己不懂的或最想解决的问题并在期末回答这些问题|作业正文|https://www.cnblogs.com/shr060414/p/18440575|教......
  • 2024数模b题-问题三思路构建
    2024数模b题-问题三思路构建问题三背景由于该生产过程有多道工序,每一个工序都有涉及多个零件装配,企业需要自己决定是否检测零配件和半成品成本,还要决定是否拆解不合格成品等,题目已经给了相应的表格,这是显而易见的决策模型我们要通过每个零配件的次品率以及购买单价,检测成本,以及半......
  • 2024数模b题-问题一思路构建
    2024数模b题-问题一思路构建样本量计算根据置信空间的计算公式,逆累积分布函数(ICDF):逆累积分布函数(ICDF)是从累积分布函数的值反推出对应的Z分数。在MATLAB中,norminv函数就是计算标准正态分布的逆累积分布函数的值我们通过这个公式来得到我们可以得到对于95%置信水平,我们能得到Z=1.......
  • SICTF-2024
    SICTF-2024MISC签到关注林枫云微信公众号,发送SICTFRound4派森下载得到了个文件,然后后缀改成py然后打开然后让ai通过谐音翻译,得到脚本然后运行py得到flag=[16,29,67,84,31,75,89,48,30,111,107,48,49,52,95,67,6,2,110,51,44,69,95,118,74,45,1......
  • 20241103 训练记录
    杂题选讲OmkarandLandslide可以发现,我们把一轮操作分解成对每个位置的单个操作,那么这些单个操作的顺序是可以随意调换的。由于最后一定会操作到不能继续操作为止,这样一轮一轮的操作就可以等价为:顺序操作\(1\)到\(n\)的每个位置,若这个点能向前滑坡,就一直滑到不能滑为止。......
  • 2024icpc南京站游记
    首先,我要说的是,袋鼠是真的真的真的真的真的真的很可爱!!!day1中午到南京,办理入住酒店、去南航报到、吃中饭。然后就是热身赛了!主办方送了袋鼠玩偶,还没开赛我就在那里玩抽象,给袋鼠摆一些奇怪姿势(bushi)然后开始之后发现五道都是袋鼠题,主办方真的很爱袋鼠。首先跟榜C是水红题,直接......
  • 学期2024-2025-1 学号20241306 《计算机基础与程序设计》第6周学习总结
    学期(如2024-2025-1)学号(如:20241300)《计算机基础与程序设计》第X周学习总结作业信息这个作业属于哪个课程2024-2025-1-计算机基础与程序设计(https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP))这个作业要求在哪里[2024-2025-1计算机基础与程序设计第6周作业(ht......
  • P11229 [CSP-J 2024] 小木棍 题解
    算法一,dp首先对于\(10^5\)的数据,很明显,如果用longlong是绝对会爆炸的,所以使用string类型进行dp.定义状态\(f_i\),表示用\(i\)根木棍能拼出的最小数字.显然,可以先初始化1~7的情况.状态转移:\(f_i=cmp(f_i,f_{i-stk_j}+j).\),其中,cmp为比较函数,j为0~9......