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. uniapp引入腾讯云直播助手插件

    在uniapp开发小程序,引入腾讯云直播助手插件 1.在manifest.json文件中,找到微信小程序特有相关,声明要使用的插件 /* 小程序特有相关 */ "mp-weixin" ...

  2. SQL注入之延时注入(10)

    以下提供两种方式进行延时注入 GET /sqli/Less-10/?id=1"+and+sleep(5)--+ HTTP/1.1 Host: 192.168.245.146:6101 Use ...

  3. D3简介

    (一)D3简介 一.D3是什么 一张图片价值相当于一千个字 D3的全称是 Data-Driven Documents,直译为:数据驱动的文档 D3是一个javaScript的函数库,是用来做数据可视化 ...

  4. Apollo配置中心拉取,通过单独打包解决 Get config services failed from http://阿里云局域网访问IP:8080/services/config?appId=MyAppId&ip=192.168.145.1 Cause Could not complete get operation

    Apollo配置中心拉取,通过单独打包解决 Get config services failed from http://阿里云局域网访问IP:8080/services/config?appId=M ...

  5. flutter Color和colors

    "Color(颜色)"是我们在设置应用程序界面样式时最常用到的属性. Flutter 中颜色设置的方式有很多种,其中最常用的有下列几种: Color c1 = Color(0xFF ...

  6. docker的安装和命令

    一. 认识Docker 我们写的代码会接触好几个环境:开发环境,测试环境以及生产环境 开发环境:程序员开发代码的环境 测试环境:开发完的代码部署到测试环境 给测试人员进行测试 生产环境:测试完成后有运 ...

  7. 蓝桥杯训练赛二-1467 问题 F: 蓝桥杯基础练习VIP-完美的代价

    题目描述 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的.小龙龙认为回文串才是完美的.现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串.交换的定义是: ...

  8. JS二进制:File、Blob、FileReader、ArrayBuffer、Base64

    原文链接:https://mp.weixin.qq.com/s/IarZDzv9dLD5suL5zdZNcQ JavaScript 提供了一些 API 来处理文件或原始文件数据,例如:File.Blo ...

  9. mi

    小米耳机页面 <style> * { margin: 0; padding: 0; } body { width: 1226px; background-color: #f5f5f5; m ...

  10. Devexpress WPF ChartControl 多Y轴

    <Window x:Class="DXApplication4.MainWindow" xmlns="http://schemas.microsoft.com/wi ...