数据结构课程设计

发布 2022-10-05 02:09:28 阅读 8324

《算法与数据结构》课程设计。

年级:11届。

专业:计算机科学与技术

班级:1班。

姓名:杨阳。

学号:110310136

用链表求解约瑟夫问题。

1算法思路:由于约瑟夫问题n个人围坐一圈,所以采用循环表实现,又由于报数时可能循环到开始,所以采用不带头结点的循环链表结构。

2算法步骤:

1) 在不带头结点的循环链表中查找第s个结点,用p作为第s歌结点的指针。

2) 从p所指的结点开始计数查找第m歌结点,pre指向p的前驱。

3) 输出该结点元素值。

4) 删除该结点,同时将该结点下一结点指针作为当前指针即p指针,重复道步骤2,知道链表中所有解思安都被删除为止。

3程序如下:

#include""

#include""

typedef struct node

int data;

struct node *next;

lnode;

lnode *create(int n)

r->next=h;

return h;

void jeseph(lnode *p,int m)

lnode *q;

int j=0;

printf("outqueue order:")

do p=p->next;

while(p->next!=p);

printf("%d",p->data);

free(p);

void main()

lnode *h;

int m,n;

printf(" input n,m=")

scanf("%d,%d",&n,&m);

h=create(n);

jeseph(h,m);

例3.3表达式求职。

1.算法分析:中缀表示:《操作数》《运算符》《操作数》

2.算法步骤:

3.程序如下:

#include<>

#include<>

#include<>

#include<>

#define max_size 256

enum bool;

typedef struct tagoperate;

static int outpriority=

int locate(char ch)

int i=0;

for(i=0;operator[i]!=0';i++)

if(operator[i]==ch)

return i;

return -1;

int isp(char ch)

if('a'<=ch&&'z'>=ch)

return 9;

elsereturn inpriority[locate(ch)];

int icp(char ch)

if('a'<=ch&&'z'>=ch)

return 8;

elsereturn outpriority[locate(ch)];

void _proc(char*src)

char buffer[max_size];

char*p=src,*q=buffer;

*q++=p++;

while('\0'!=p)

*q='\0';

strcpy(src,buffer);

void srcfunproc(char*src)

char buffer[max_size];

char*p=src,*q=buffer;

while(*p!='0')

*q='\0';

strcpy(src,buffer);

void postsrc(char*src,lpoperate lpoperator)

char *p=src,y;

lpoperate lpoptr=lpoperator;

char stack[max_size];

int top=-1;

double operand;

int offset=0;

stack[++top]='#

while('\0'!=p)

elseif('x'==p)

lpoptr++)operator='x';

p++;else

if('p'==p)

lpoptr->operand=3.14159266;

p+=2;lpoptr->operator=0;

lpoptr++;

elsefor(y=stack[top--]isp(y)>icp(*p);y=stack[top--]

lpoptr++)operator=y;

stack[++top]=y;

stack[++top]=*p++;

while(top!=-1)

(lpoptr++)operator=stack[top--]

int isdigit(char ch)

if(('0'<=ch&&'9'>=ch)||ch)

数据结构课程设计

课程设计说明书 题目哈夫曼编码问题的设计和实现。课程名称数据结构课程设计。院 系 部 中心。专业。班级。学生姓名。学号。设计地点。指导教师。设计起止时间 2008 年6月 2日至 2008 年 6月 6 日。目录。1 问题描述 2 1.1 题目内容 2 1.2 基本要求 2 1.3 测试数据 2 2...

数据结构课程设计

数据结构 课程设计。实验报告。学院 信息工程学院。班级 姓名 学号 指导老师 题目2 一元多项式的计算。1 实验目的。1 掌握链表的灵活运用 2 学习链表初始化和建立一个新的链表 3 知道怎样去实现链表删除结点操作与插入结点 4 理解链表的基本操作 包括数据域数据的相加 并能灵活运用。2 实验内容。...

数据结构课程设计

班级 信计 1102 姓名 李娜娜。学号 1108060209 设计日期 2013.07.15 西安科技大学计算机学院 1.实验题目 编制一个演绎扫雷游戏的程序。2.问题描述。做一个n x m的扫雷游戏,每个方格包含两种状态 关闭 closed 和打开 opened 初始化时每个方格都是关闭的,一个...