zoukankan      html  css  js  c++  java
  • 博客作业03--栈和队列

    1.学习总结(2分)

    2.PTA实验作业(4分)

    题目1:7-1 jmu-字符串是否对称

    2.2 设计思路

    函数参数 str[]为原字符串   s为str[]入栈的栈
    
            自定义类型变量 e   存放栈顶元素
    for i=0 to  str[i]为空 
         将str[i]进栈s
    end for
    for i=0 to str[i]为空 
           Pop函数出栈(e=原栈顶)
           if str[i] 不等于 e
                  返回false
           end if
    end for
    完全遍历,返回true
    

    2.3 代码截图

    2.4 PTA提交列表说明(提交了好多个段错误)

    主要的区别在于字符数组的赋值与判断str[i]无内容的条件不同---------还是上学期gets和getchar的用法以及‘’和' '的用法还不太清楚

    0分:


    满分:


    2.1 题目2:7-3 表达式转换

    2.2 设计思路

    传参 栈指针类型 s ,ElemType类型 e传当前字符, c传前一个字符
    
    定义 ElemType类型 变量x存放栈头,a存放出栈元素
    if  栈不为空
               x 等于 gettop(s)函数取栈头
               if  e 等于 ')'
                       while x 不等于 '(' 且 队列不为空
                                 弹出并输出栈顶
                       end
                       将栈顶的  (  弹出 
               end if
               else if  e 等于  (    进栈
               else if  e 等于  * 或 /
                         while 栈顶 x 等于 * 或  /
                                   弹出并输出栈顶
                         end
                         e 进栈
              end
              else if  e 等于  +
                         while 栈顶 x 等于 * 或 x 等于 / 或 x 等于 + 或 x 等于 -
                                   弹出并输出栈顶
                         end
                         if c 为数字 或 c 等于 )
                         e 进栈
              end
              else if  e 等于  -
                         while x 等于 * 或 x 等于 / 或 x 等于 + 或 x 等于 -
                                   x=gettop(s);
                                   pop出栈存于a
                                   输出 空格 a
                         end
                         if c 为数字 
                               e 进栈
                         else
                               输出 空格 a
                               flag 等于0
    
              end
    end if
    else if e 等于 -
             输出 e
    else
             进栈
    

    2.3 代码截图

    主函数

    栈的基本操作


    该题主要函数


    2.4 PTA提交列表说明。

    1.嵌套括号格式错误

        错误测试:当开头为多个括号时,第一个输出的数字前会多一个空格
        修正 :增加全局变量flag=0  ,第一次输出后令flag=1,通过对flag的值判断是否输出空格
    

    2.运算数超过1位整数且有非整数出现

        修正:利用全局变量flag
    

    3.运算数前有正负号

       修正:函数参数传将前一个字符,判断该字符的前一个字符是否也是运算符(e为当前字符,c为前一个字符)
    


    在‘+’进队前判断c是否为数字

    在‘-’进队前进行判断c是否为数字,且若是负数,‘-’要输出

    2.1 题目3:7-1 jmu-报数游戏

    2.2 设计思路

    定义 整型变量 n存储总人数  m为出队数字
            自定义类型 e 存储出队数据
            队列指针类型  q
    
            输入 n,m
            if m 大于 n 
                 报错
            end  if 
            else1
                  for i=1 to i=n 共n个人
                       i 进队q
                 end for
                 初始化 i=0
                 while  队列不为空
                       i++;    //报数
                       出队 e=队头
                       if  i%m 不等于 0
                           then     e回队尾
                           else     输出  e
                      end if  
                end  while
            end else1
    
    

    2.3 代码截图

    2.4 PTA提交列表说明

    3.截图本周题目集的PTA最后排名(3分)

    曾文惠
    201721123002

    3.1 栈PTA排名(27---100)

    3.2 队列PTA排名(62---80)

    3.3 我的总分:2分(180)

    4. 阅读代码

    
    进制转换
    
    void conversion(int a, int b)  //参数为从a进制转换为b进制
     {
          int num = 0;
          char z = 'A';
          printf("请输入你想要转换的%d进制数",a);
          scanf("%d", &num);
         while(num)
         {
             Push(Scale, num%b);  //取余数逐个进栈
             num /=b;  //求商
         }
         int e = 0;
         printf("转换为%d进制数为:", b);
         while(!StackEmpty(Scale))
         {
             Pop(Scale, e);   //逐个出栈
             if(e >= 10 && e <= 15)  //结果为十六进制时用到转换为字母
                 printf("%c", z+e-10);
            else
                 printf("%d", e);
         }
          printf("
    ");
     }
    
    

    5. 代码Git提交记录截图



    队列

  • 相关阅读:
    js截取字符串区分汉字字母代码
    List 去处自定义重复对象方法
    63. Unique Paths II
    62. Unique Paths
    388. Longest Absolute File Path
    41. First Missing Positive
    140. Word Break II
    139. Word Break
    239. Sliding Window Maximum
    5. Longest Palindromic Substring
  • 原文地址:https://www.cnblogs.com/Zeng99/p/8732708.html
Copyright © 2011-2022 走看看