数据结构--斐波那契数列的非重复递归实现
来源:互联网 发布:ai设计软件formac 编辑:程序博客网 时间:2024/06/05 19:50
/*
思路:
<span style="white-space:pre"></span>建立循环链表并创建3个结点,在递归函数中node3.data=node2.deta+node1.data
*/
#include<iostream>using namespace std;typedef struct Node{int data;Node* next;};class List{public:List(int val = 1) :len(0){node = new Node();node->data = val;node->next = NULL;}void add(int val){int i = 0;if (len == 0){this->node->data = val;node->next = node;len = 1;return;}Node *newNode = new Node();newNode->data = val;Node *tmp = node;while (tmp->next!=node){tmp = tmp->next;i++;}tmp->next = newNode;newNode->next = node;len++;}Node* getHead(){ return node; }int getLen(){ return len; }void show(){int i = 0;Node *tmp = node;for (; i < len; i++){cout << tmp->data << " ";tmp = tmp->next;}cout << endl;}~List(){delete(node);node = NULL;}private:int len;Node *node;};//1,1,2,3,5,8,13,21,34,55int fab(Node *node, int n){if (n == 1 || n == 2)return node->data;node = node->next;node->data = node->next->data + node->next->next->data;fab(node, n - 1);}int main(){List list;for (int i = 0; i < 3; i++)list.add(1);//list.show();int fabRst = fab(list.getHead(), 1);cout << fabRst << endl;return 0;}
0 0
- 数据结构--斐波那契数列的非重复递归实现
- 斐波那契数列的非递归实现
- 斐波那契数列的非递归实现 JAVA
- 斐波那契数列的非递归实现
- 斐波那契数列的非递归实现
- 《数据结构、算法与应用》4.(递归和非递归实现斐波那契数列)
- 递归和非递归实现斐波那契数列
- 斐波那契数列递归非递归实现
- 数据结构与算法_斐波那契数列的递归与非递归
- 实现斐波那契数列的递归、非递归及尾递归。
- 斐波那契数列的递归及非递归
- 斐波那契数列的递归实现和非递归实现
- 斐波那契数列的递归实现和非递归实现
- 非递归实现斐波那契数列
- 非递归实现斐波那契数列
- 栈实现斐波那契数列递归过程的非递归模拟
- 斐波那契数列的递归和非递归实现
- 斐波那契数列的递归与非递归算法实现及其时间复杂度
- Qt5学习笔记(5)——列表框QListWidget类
- OpenStack之RESTful API调用(二)
- 目标检测的图像特征提取之(一)HOG特征
- C++Primer学习笔记(6)语句
- Oracle NoSQL学习的一点心得
- 数据结构--斐波那契数列的非重复递归实现
- 在Unbuntu 14.04中JDK环境的搭建
- Cts框架解析(23)-设备分类
- 关于I/O的一些记录
- 判断一个数是否是质数
- ubuntu安装unix2dos,dos2unix,tofrodos工具
- codeigniter中处理图像
- 《Linux高性能服务器编程》学习笔记——第五章 Linux网络编程基础API(5)
- iOS应用程序安全简要总结