首页 > 其他分享 >9.21日数据结构练习题

9.21日数据结构练习题

时间:2023-09-21 21:33:36浏览次数:38  
标签:练习题 9.21 return SqStack top char base 数据结构 void

用栈操作去判断一个字符串是不是回文数列

 1 #include <iostream>
 2 #define MAXSIZE 100
 3 using namespace std;
 4 //定义一个栈的结构体
 5 //包含顶指针,尾指针,长度 
 6 typedef struct{
 7     char* base;
 8     char* top;
 9     int stacksize;
10 }SqStack;
11 //创建一个空栈 
12 void InitStack(SqStack &S){
13     S.base=new char[MAXSIZE];
14     if(!S.base){
15         return;
16     }
17     S.top=S.base;
18     S.stacksize=MAXSIZE;
19     return;
20 }
21 //入栈函数 
22 void Push(SqStack &s,char e){
23     if(s.top-s.base==s.stacksize){
24         return;
25     }
26     *s.top++=e;
27     return;
28 }
29 //出栈函数 
30 void Pop(SqStack &s,char &e){
31     if(s.top==s.base){
32         return;
33     }
34     e=*--s.top;
35     return;
36 }
37 //判断是否为回文的函数 
38 void determinet(char s[],int n){
39     for(int i=0;i<n;i++){
40         if(s[i]==' '){
41             cout<<"入栈不成功"<<endl;
42             return;
43         }
44     }
45     SqStack S;
46     InitStack(S);
47     for(int i=0;i<n;i++){
48         Push(S,s[i]);
49     }
50     for(int i=0;i<n;i++){
51         char e;
52         Pop(S,e);
53         char c=e;
54         if(c!=s[i]){
55             cout<<"此字符串不是回文串"<<endl;
56             return;
57         }
58     }
59     cout<<"此字符串是回文串"<<endl;
60 }
61 int main(){
62     int n;
63     while(1){
64         cin>>n;
65         if(n<=100){
66             break;
67         }
68     }
69     getchar();
70     char s[n]; 
71     cin.getline(s,n); 
72     determinet(s,n);
73 } 

 

标签:练习题,9.21,return,SqStack,top,char,base,数据结构,void
From: https://www.cnblogs.com/Lyh3012648079/p/17721017.html

相关文章

  • 9.21闲话
    今天没啥破事了。上午打交了。下午打交了。晚上打交了。上午和下午好像没啥事。晚上wyy阳了回家了,大摆特摆!好像十一就分班了,希望大象早点死,别留班里搞臭整个班。感觉没有模拟赛的一天好平淡,有模拟赛的一天又太刺激了......
  • 9.21随笔
    局部变量在某个函数或块的内部声明的变量称为局部变量。它们只能被该函数或该代码块内部的语句使用。局部变量在函数外部是不可知的。下面是使用局部变量的实例。在这里,所有的变量a、b和c是main()函数的局部变量。实例#include<stdio.h>intmain(){/*局部变量声......
  • C语言-数据结构之顺序表
    #include<stdio.h>#defineN128typedefintdata_type;typedefstruct{ data_typedata[N]; intlast;}sqlist;sqlist*list_create();intlist_show(sqlist*L);intlist_clear(sqlist*L);intlist_destory(sqlist*L);intlist_empty(sqlist*L......
  • 深入浅出程序设计竞赛(进阶篇)VO.7 进阶数据结构
    第五章二叉堆P2168[NOI2015]荷马史诗哈夫曼树P2827[NOIP2016提高组]蚯蚓找最长的蚯蚓只需要直到相对大小,其余蚯蚓长度\(+q\)等价于新产生的两条蚯蚓长度\(-q\)新产生的第一/二条蚯蚓长度分别单调,可以用队列代替堆时间复杂度\(O(n\logn+m)\)P1801黑匣子对顶堆......
  • 数据结构
    1.数据结构——栈(子弹弹夹     2.数据结构——队列(地铁安检)  3.数组  4.链表  5.红黑树 ......
  • 9.21每日总结
     Hive表操作–增删改:(1)创建一个自定义分隔符的普通内部表:CREATETABLEIFNOTEXISTSemployee( #employee为举例表名,根据实际情况进行替换,下同namestring,work_placeARRAY<string>,sex_ageSTRUCT<sex:string,age:int>,skills_scoreMAP<string,int>,d......
  • 每日总结|9.21-Hive搭建及报错解决方案
    搭建安装hive把apache-hive-3.1.2-bin.tar.gz上传到linux的/opt/software目录下 解压apache-hive-3.1.2-bin.tar.gz到/opt/module/目录下面tar-zxvf/opt/software/apache-hive-3.1.2-bin.tar.gz-C/opt/module/修改apache-hive-3.1.2-bin.tar.gz的名称为h......
  • 2023.9.21——每日总结
    学习所花时间(包括上课):9h代码量(行):0行博客量(篇):1篇今天,上午上课,下午上课。我了解到的知识点:1.了解了关于模型训练的一些知识和注意事项;2.了解了关于软件构造的一些知识,明日计划:1.完成Hive的测试;......
  • 从零开始的32小车/diary/9.21
    今上午起晚了,一百多个毕设就剩这一个了。也算是为了应付毕设,开卷。 题目:机场智能行李车系统的设计与实现实现行李车定位、非特定人语音识别、循迹避障等,实现一款通过语音交互与乘客进行沟通的可以为机场乘客领路、陪伴乘客完成登机前准备工作的机场智能行李车。需要知识点:嵌入......
  • 9.21 英语精读
    高铁化妆 Apublicservicevideoabout"uncivilisedbehavior"onboardChina'smuch-laudedhigh-speedtrainsappearstohavecomeofftherailsamidaccusationsthatitsinglesoutwomen.Thevideoappearstohavebeenintendedtoencourage......