1.作业头

| 这个作业属于哪个课程 | < https://edu.cnblogs.com/campus/zswxy/SE2020-3> |

| ---- | ---- | ---- |

| 这个作业要求在哪 | <https://edu.cnblogs.com/campus/zswxy/SE2020-3/homework/11822 > |

| 这个作业的目标 | <熟练掌握数组与他的算法,如顺序排序法,选择排序法> |

| 学号 | <20209160> |

一、本周教学内容&目标

第七章 数组 7.17.1 输出所有大于平均值的数

1.学生知道在哪种情况下可以使用构造数据类型—数组进行数据的处理

2.掌握用一维数组进行编程

3.掌握选择排序法和二分查找法

二、本周作业

2.1 完成PTA作业,并给出编程题完成截图

2.2 题目:快速寻找满足条件的两个数

能否快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值,为了简化起见,我们假设这个数组中肯定存在至少一组符合要求的解。

解法一:采用穷举法,从数组中任意取出两个数字,计算两者之和是否为给定的数字。



解法二:对数组中的每个数字arr[i]都判别Sum-arr[i]是否在数组中。



解法三:对数组进行排序,然后使用二分查找法针对arr[i]查找Sum-arr[i]。



要求:

1.根据三种解法给出相应的代码,并给出测试数据。

2.请说明三种算法的区别是什么?你还可以给出更好的算法吗?

解法一:穷举法。将数组中的数逐个逐个的相加,再与给定的值比较。和与给定的值逐个比较。
解法二:判断给定的值与数组里的每个数的差,是否能在数组里找到差。数组里的数逐个与差比较。
解法三:首先给数组进行选择排序,然后求给定的值与数组里的每个数的差,再二分法查找,最后用for循环输出。
判别法:判别分析又称“分辨法”,是在分类确定的条件下,根据某一研究对象的各种特征值判别其类型归属问题的一种多变量统计分析方法。

2.3 请搜索有哪些排序算法,并用自己的理解对集中排序算法分别进行描述

排序算法:选择排序法,冒泡排序法,插入排序法,希尔排序法,计数排序法,归并排序法
选择排序法:在数组中选择一个最大或者最小的数排在前面,再从剩下的数中选择排在后面。
冒泡排序法:比如说升序排列,那么就依次相邻两个数比较大小,然后把大的数放在后面。
插入排序法:它通过构建有序序列,对于未排序的数据序列,在已排序序列中从后向前扫描,找到相应的位置并插入。
希尔排序法:希尔排序在插入排序的基础上进行了改进,它的基本思路是先将整个数据序列分割成若干子序列分别进行直接插入排序,待整个序列中的记录基本有序时,再对全部数据进行依次直接插入排序。
计数排序法:找到元素中值为i的元素,放入另外一个数组的第i项,全部计完后从第一项一次输出,每输出一次第i项减少一次。
归并排序法:归并排序严格遵循从左到右或从右到左的顺序合并子数据序列, 它不会改变相同数据之间的相对顺序, 因此归并排序是一种稳定的排序算法。

2.4 请给出本周学习总结

1 学习进度条

| 时间 | 博客字数 | 代码行数 | 这周发的时间 | 存在迷惑 |

| ---- | ---- | ---- | ---- | ---- | ---- |

| 第二周 | 541 | 254 | 8小时 | 大概了解数组,但是冒泡排序跟选择没有太清楚 | |

2 累积代码行和博客字数

3 学习内容总结和感悟

1.通过这几周的联系,让我对C语言数组有更深一步了解

2.学习到现在,还是发现自己的许多的盲点,有很多的不理解的东西

3.要学会这门课程,需要发更多的精力,更好的去对待他

C语言II一作业02的更多相关文章

  1. C语言II博客作业02

    这个作业属于那个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-4 这个作业要求在哪里 https://edu.cnblogs.com/campus/zs ...

  2. C语言入门:02.第一个C语言程序

    一.开发工具的选择(1)可以用来写代码的工具:记事本.UltraEdit.Vim.Xcode等(2)选择Xcode的原因:苹果官方提供的开发利器.简化开发过程.有高亮显示功能 (3)使用Xcode新建 ...

  3. | C语言I作业02

    C语言I博客作业02 标签: 18软件2班 李煦亮 问题 答案 这个作业属于那个课程 C语言程序设计I 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/C ...

  4. [程序设计语言]-[核心概念]-02:名字、作用域和约束(Bindings)

    本系列导航 本系列其他文章目录请戳这里. 1.名字.约束时间(Binding Time) 在本篇博文开始前先介绍两个约定:第一个是“对象”,除非在介绍面向对象语言时,本系列中出现的对象均是指任何可以有 ...

  5. C语言实现二叉树-02版

    ---恢复内容开始--- 昨天,提交完我们的二叉树项目后,今天早上项目经理早早给我打电话: 他说,小伙子干的不错.但是为什么你上面的insert是recusive的呢? 你难道不知道万一数据量大啦!那 ...

  6. C语言范例学习02

    第二章 指针 算是重点吧,这也是C语言的特色啊,直接访问物理存储. 重点: 指针就是一个存放它指向变量地址的变量,好绕口.   区分*在定义是与引用是的作用.   区分*.&的不同.   指针 ...

  7. 【C语言学习】-02 分支结构

    本文目录: 一.BOOL布尔类型 二.关系运算符 三.逻辑运算符 四.if语句 五.枚举类型 六.switch语句 一.BOOL布尔类型 BOOL数据类型,是一种表示非真即假的数据类型,布尔类型的变量 ...

  8. c语言基础学习02

    =============================================================================涉及到的知识点有:include有两种用法.{ ...

  9. R语言编程艺术#02#矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  10. JavaScript语言精粹 笔记02 函数

    函数函数对象函数字面量调用参数返回异常给类型增加方法递归作用域闭包回调模块级联套用记忆   函数 1 函数对象 在JS中函数就是对象.对象是“名/值”对的集合并拥有一个连接到原型对象的隐藏连接.对象字 ...

随机推荐

  1. sxt_(015)_request处理表单数据及乱码

    一.request处理表单数据及乱码 1.1 处理单个表单数据用request.getParameter("x"); 1.2 处理多个表单(checkbox.select)数据用r ...

  2. 无感知WPF窗口透明加穿透

    在窗口的XAML文件中添加以下属性: ShowInTaskbar="False" WindowStyle="None" AllowsTransparency=& ...

  3. SQL_TIP_JOIN_x

    没有条件的JOIN会导致数据数量变为两表的数据量的乘积结果. 用ON来在这些结果里进行筛选 on T1.A = T2.A的时候,如果T1的A是不重复的,则实际上是在对T2现有数据做筛选,结果数据量&l ...

  4. 各种工具点评以供选择使用 + 开发工具秘籍(git, webpack。。。。)

    git最佳实践: https://gist.github.com/fandean/ca29cd2f326f66c659951d7ab356cefb ========================== ...

  5. yolov5查看训练日志图片和直方图(包括稀疏训练bn直方图)

    0.D:\code\codePy\yolov5-6.1\runs\train\exp25文件夹下有 events.out.tfevents.1675823043.DESKTOP-ACC9FL4.521 ...

  6. centos7上安装使用docker环境

    系统环境准备: docker 运行在centos7上,要去系统为64位.系统内核版本为3.10以上 1.查看系统版本:cat/etc/redhat-release 2.查看系统内核版本:uname - ...

  7. 学习-Vue3-绑定内联样式

    <template> <div> <!-- 绑定内联样式--绑定对象 --> <!-- <div :style="{color: active ...

  8. Jenkins拉取GitHub上代码

    1.github 生成 Personal Access Token 2.github 设置 GitHub webhooks (具体需要持续集成的项目),新建或者设置现有项目的 webhooks 选项, ...

  9. R语言MCMC-GARCH、风险价值VaR模型股价波动分析上证指数时间序列

    全文链接:http://tecdat.cn/?p=31717 原文出处:拓端数据部落公众号 分析师:Ke Liu 随着金融市场全球化的发展,金融产品逐渐受到越来越多的关注,而金融产品的风险度量成为投资 ...

  10. Vulnhub 靶场 CORROSION: 2

    Vulnhub 靶场 CORROSION: 2 前期准备 下载地址:https://www.vulnhub.com/entry/corrosion-2,745/ 靶机地址:192.168.147.19 ...