前言:
现在各位老铁们对“单链表逆序输出c语言是什么”大概比较着重,你们都想要分析一些“单链表逆序输出c语言是什么”的相关文章。那么小编也在网摘上收集了一些关于“单链表逆序输出c语言是什么””的相关知识,希望咱们能喜欢,大家快快来学习一下吧!需求描述:给出一个单链表,实现逆序打印链表(要求:不改变单链表数据结构,采用递归方式)
typedef struct LinkNode { int val; struct LinkNode* next;}LinkNode;// 创建单链表void creatLinkList(LinkNode* head);// 逆序打印单链表void linkListReversePrint(LinkNode* node);//int main() { // 创建单链表 LinkNode* head = (LinkNode*)malloc(sizeof(LinkNode)); if(head == NULL) {exit(-1);} head->next = NULL; LinkNode* curr = head; creatLinkList(curr); // 逆序打印单链表 linkListReversePrint(head->next); printf("\n");}#pragma mark - 创建单链表void creatLinkList(LinkNode* head) { for(int i = 0;i < 5;i++) { LinkNode* node = (LinkNode*)malloc(sizeof(LinkNode)); if(node == NULL) {exit(-1);} node->val = 100 * (i + 1); node->next = head->next; head->next = node; head = head->next; }}#pragma mark - 逆序打印链表 要求不改变单链表数据结构,使用递归实现void linkListReversePrint(LinkNode* node){ if(node != NULL) { if(node->next != NULL) { linkListReversePrint(node->next); //递归调用 } printf("%d ",node->val); }}
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #单链表逆序输出c语言是什么 #递归反向输出数字 #递归实现逆序输出 #递归输出逆序数 #递归函数逆序输出一串数字