• C博客作业04--数组


    这个作业属于哪个班级 C语言--网络2011/2012
    这个作业的地址 C博客作业04--数组
    这个作业的目标 学习数组相关内容
    姓名 吴俊豪

    0.展示PTA总分


    1. 本章学习总结

    1.1 学习内容总结

    查找数组的做法

    对于乱序数组:逐一比对.
    对于顺序数组:二分查找法.

    插入数组

    方法:
    伪代码

    确定插入位点i后
    for 数组末尾 to i
    num[i+1]=num[i]
    end for
    num[i]=插入数
    

    删除数据

    野蛮蠕动法:

    无情重构法
    伪代码:

    删除底数e,j=0,i=0
    for 0 to num1末尾
    if i=e i++
    else num2[j]=num1[i] j++
    end for
    

    排序方法

    冒泡排序法:
    思路:外循环控制冒泡轮次,内循环从0到j-i控制单轮的排序次数
    选择排序法:
    思路:外循环控制选择轮次,内循环从i到n控制单轮的排序次数

    枚举法

    实例:查找整数, 统计一行文本的单词个数,删除数字字符等

    哈希数组

    案例:有重复的数据I

    字符数组、字符串特点及编程注意事项

    1)使用scanf输入数组时遇到'(我是空格)'或' '时会自动加上结束符'',但之后需在输出前加入str[i]=''来避免可能发生的段错误.
    2)对于输入内容有换行或空格的字符串时宜用fgets(字符数组名,字符数组长度,stdin);,该语句可以接收空格和换行符,并也能在字符串末尾加上结束符' '.

    2. PTA实验作业

    2.1 有重复的数据I

    2.1.1 伪代码

    int num[]
    static int hash[]
    flag=1
    for 0 to num末尾
    if hash[num[i]]==0 hash[num[i]]++
    if hash[num[i]]>0 flag=0
    end for
    if flag=0 NO
    if flag=1 YES
    

    2.1.2 代码贴图

    2.1.3 代码比较

    @陈剑

    比较:其实思路框架都是一个,做法都大同小异

    2.2 找鞍点

    2.2.1 伪代码

    flag=0
    for i=0 to n 
     for j=0 to n
      for x=0 to n
      行比较 否 count++
      end for
      for y=0 to n
      列比较 否 count++
      end for
      if count=0 flag=1 printf鞍点
     end for 
    end for
    if flag=0 printf NONE
    

    2.2.2 代码截图


    2.2.3 与超星视频相比

    我的代码循环次数较多,有可以继续优化的部分,但也能准确地找出鞍点

    2.3 切分表达式

    2.3.1 伪代码

    for i=0 to n
      if 本位是数字 
         printf 本位
         if 下一位不是数字
             if 下一位是小数点
                 continue
             end if
             else if
             printf 
    
             end if
         else if 下一位是数字
         end if
      end if
      if 本位是+-
         if 正负号
         printf 本位
         end if
         if 加减号
         printf 本位
    
         end if
      end if
      if 本位是小数点
         printf 小数点
      end if 
      if 本位是*/()
         printf 本位
    
      end if 
    end for
    

    2.3.2 代码截图


    2.3.3 与超星做法比较

    超星视频里使用了函数对代码进行封装,代码看起来更加规范
    无了

  • 相关阅读:
    flex
    导航守卫 -vue
    H5 History
    JSX -react
    插槽slot -vue
    js 模拟鼠标绘制方块
    js 模拟滚动条
    js 实现简易留言板功能
    js 实现端口列表话
    js 为数组编写该方法;indexOf
  • 原文地址:https://www.cnblogs.com/konjac-wjh/p/14127253.html
Copyright © 2020-2023  润新知