c语言判断字符串是否对称,c语言 判断字符串是否中心对称

这篇博客介绍了一个使用C语言判断字符串是否中心对称的方法。通过创建单链表和顺序栈,将字符串转化为链表,然后比较链表前后半部分字符的对称性,从而确定字符串是否对称。
摘要由CSDN通过智能技术生成

匿名用户

1级

2012-10-19 回答

代码的主要思想

1 讲输入的字符串保存到顺序链表中

2 计算链表的长度

3 根据长度的积偶性,将链表的前一半加到栈中

4 从栈中pop出各个元素,跟链表后一半的各个字符比较,如果有不一样的,说明不对称

具体细节

//判字符串中心对称

#include

#include

#include

//定义单链表结构类型

typedef char datatype;

typedef struct node

{ datatype data;

struct node *next;

}linklist;

//定义顺序栈结构类型,

const int maxsize=40;

typedef struct

{ datatype elements[maxsize];//栈空间的大小

int top;//栈顶下标(elements的下标)

}stack;

void setnull(stack *&);//清空栈

int length(linklist*);//计算链表长度

void printlink(linklist*);//打印链表的数据

void create(linklist *&,datatype*);//创建链表

void push(stack*,datatype);//压栈操作

datatype pop(stack*);//出栈操作

int symmetry(linklist*,stack*);//判字符串是否中心对称的函数声

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值