栈—C—python

来源:互联网 发布:九维网络免费wifi 编辑:程序博客网 时间:2024/06/16 16:29

2-2 解密回文
用栈来判断字符串是否是回文,即左右完全对称

C实现 数组实现的栈操作

#include<stdio.h>int main(){    char a[101],s[101];    int i,len,mid,next,top=0;    gets(a); //输入一个字符串到字符数组a    len = strlen(a);    mid =len/2;    for(i=0;i<mid;i++)        s[++top]=a[i];    if(len%2==0)        next=mid;    else        next=mid+1;    for(i=next;i<=len-1;i++)    {        if(a[i]!=s[top])            break;        top--;    }    if(top==0)        printf("YES");    else        printf("NO");    return 0;}

python实现 list实现栈操作

#解密回文def dec_pal(lists):    top=0    s=[0]*20    n=len(lists)    mid=n//2    for i in range(mid):       top+=1       s[top]=lists[i]    if n%2==0:        next=mid    else:        next=mid+1    for j in range(mid+1,n):        if lists[j]!=s[top]:            break        top-=1    if top==0:        print('YES')    else:        print('NO')if __name__=='__main__':    list =input('intput elements:').strip().split()    dec_pal(list)
原创粉丝点击