zoukankan      html  css  js  c++  java
  • C语言II博客作业02

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-1
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11821
    这个作业的目标 <对数组进行初步的了解>
    学号 <20209091>

    二.本周作业

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

    7-1 年龄与疾病

    7-2 选择排序法

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

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

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

    测试数据

    输入数据 输出数据 说明
    1 3 1+3=4
    1 4 3 2 1+4=5 3+2=5

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

    输入数据 输出数据 说明
    1 3 1和3在数组中
    1 4 3 2 1 4 3 2在数组中

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

    | 输入数据 | 输出数据 |
    | ---- | ---- | ---- |
    | | 1 4 2 3 |
    ||1 2|

    2.请说明三种算法的区别是什么?你还可以给出更好的算法吗?
    (1).穷举法运算简单,代码也比较容易写,但是运算起来比较麻烦。
    (2).第二种算法要比第一种更加精确。
    (3).二分法通过缩短范围来查找数,更加方便和快捷。

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

    希尔排序法:先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序
    冒泡排序:每个数据都会过一遍,每次比较2个元素,如果有顺序错误就换位置。
    二分查找法:二分法通过中间数来查找想要的值,通过缩短范围精度来实现,更加方便与快捷。

    2.4 请给出本周学习总结

    1 学习进度条

    周/日期 这周花的时间 代码行数 学到的知识简介 目前比较困惑的问题
    第一周 13h 41 运用代码打开文件并且测试数据 如何弹出文件中的数据
    第二周 14h 67 对数组中的数字进行排序 二分法查找数字

    2 累积代码行和博客字数

    3 学习内容总结和感悟

    4 去了解冒泡排序,并用自己的话进行说明

    冒泡排序是对数字的大小进行比较排序,每个数据都会过一遍,每次比较2个元素,如果有顺序错误就换位置,从第一对数字到最后一对数字,每个数字都会进行比较,不会遗漏。

  • 相关阅读:
    Xcode的控制台调试命令
    android 分辨率自适应
    android 分辨率自适应
    android屏幕适配
    android屏幕适配
    最新版本的ADT使用问题
    最新版本的ADT使用问题
    UVa 1639 Candy (数学期望+组合数学+高精度存储)
    UVa 12230 && HDU 3232 Crossing Rivers (数学期望水题)
    HDU 1087 Super Jumping! Jumping! Jumping! (DP+LIS)
  • 原文地址:https://www.cnblogs.com/chen--123/p/14586073.html
Copyright © 2011-2022 走看看