程序员面试100题(算法)之递归逆序打印单链表、字符串(同时求字符串长度)
(一)递归逆序打印单链表
void PrintReverseLink(LinkNode *headNode){if(NULL == headNode)return;PrintReverseLink(headNode->next);cout << headNode->value << " ";}
(二)递归逆序打印字符串,同时求字符串长度
void PrintReverseStr(char *str, int &length){if(NULL == str)return;else if(*str == '\0')return;else{length++;char *s = str + 1;PrintReverseStr(s, length);cout << *str;}}
输入:
char sentence[] = "abc d e f \ng";
输出:
长度为20