数据结构与算法分析

/头插法

LinkList *CreateListF(){

char ch;

LinkList *head=NULL;

while((ch=getchar())!='#'){

LinkList s=(LinkList )malloc(sizeof(LinkList));

s->data=ch;

s->next=head;

head=s;

}

return head;

}

//尾插法

LinkList *CreateListR(){

char ch;

LinkList *head=NULL,*s,r=NULL;
while((ch=gether())!='#'){
s=(LinkList
)malloc(sizeof(LinkList));

s-data=ch;

if(head==NULL){

head=s;

}else{

r->next=s;

}

r=s;

}

if(r!=NULL) r->next=NULL;

return head;

}

//头结点尾插法

LinkList *CreatList(){

char ch;

LinkList head=(LinkList )malloc(sizeof(LinkList));

LinkList *r=head,s;
while((ch=gether())!='#'){
s=(LinkList
)malloc(sizeof(LinkList));

s->data=ch;

r->next=s;

r=s;

}

r->next=NULL;

return head;

}

//顺序栈

#define MAXSIZE 1020

typedef int Datatype;

typedef struct{

Datatype data[MAXSIZE];

int Top;

}SequenStack;

//链栈

typedef int Datatype;

typedef struct node{

Datatype element;

struct node *next;

}LinkList;

LinkList *Top;

//fibonacci递归

int Fib(int n){

if(n0) return 0;
if(n1) return 1;

return Fib(n-1)+Fib(n-2);

}

//优化

int FibDP(int n){

if(n<=) return n;

int dp[n-1];

dp[0]=0;

dp[1]=1;

for(int i=2;i<=n;i++){

dp[i]=dp[i-1]+dp[i-2];

}

rerurn dp[n]

}

相关推荐
珂朵莉MM16 小时前
2025年睿抗机器人开发者大赛CAIP-编程技能赛-本科组(国赛)解题报告 | 珂学家
java·人工智能·算法·机器人·无人机
w-w0w-w16 小时前
C++中vector的操作和简单实现
开发语言·数据结构·c++
l1t16 小时前
郭其先生利用DeepSeek实现的PostgreSQL递归CTE实现DFS写法
sql·算法·postgresql·深度优先
橘颂TA16 小时前
【剑斩OFFER】算法的暴力美学——力扣 227 题:基本计算机Ⅱ
c++·算法·leetcode·职场和发展·结构于算法
信奥卷王16 小时前
2025年12月GESPC++二级真题解析(含视频)
算法
Z1Jxxx16 小时前
输入n个数进行排序,要求先按奇偶后按从小到大的顺序排序
数据结构·算法
乐迪信息16 小时前
乐迪信息:船体AI烟火检测,24小时火灾自动预警
人工智能·物联网·算法·目标检测·语音识别
Z1Jxxx16 小时前
整除整除整除
开发语言·c++·算法
Swift社区16 小时前
LeetCode 471 编码最短长度的字符串
算法·leetcode·职场和发展
没有天赋那就反复16 小时前
JAVA length
java·开发语言·算法