當前位置:首頁 » 編程語言 » 數據結構c語言版霍

數據結構c語言版霍

發布時間: 2022-12-19 08:58:19

⑴ 數據結構(c語言版)

A進,A退,B進,C進,D進,D退,C退,B退----可得ADCB
A進,B進,C進,D進,D退,C退,B退,A退----可得DCBA

但序列ADBC得不到
原因可在了解下面內容後得知

關於這類問題的判斷方法一般為跟蹤(我自已起的名字)
1.畫出一個棧的圖
2.按入棧順序進棧一個一個元素進棧,每進棧一個元素就觀察棧頂是不是和出棧順序的下一個元素比較一下.若是則出棧並繼續比較棧頂元素和出棧順序的下一個元素,並一直出棧到棧頂元素與出棧順序下一個元素不同.若不是剛繼續按入棧順序進棧.

因此你可以觀察到在AD出棧時棧頂是C而B在C後面,所以此時B出棧必晚於C

⑵ C語言版的數據結構問題

struct node *current; //定義一個臨時結構指針,指向當前結點

for(current=&h; (curren->data != a) && (current->next != NULL); )
current=next; //如果當前結點的值不等於a,並且不是最後一個結點,指向下一個結點
s.next=current->next; //找到滿足條件的節點後,插入結點s

current->next=&s;

⑶ 數據結構(C語言版)怎麼學啊!

數據結構這門課,主要講了2個問題:第一個就是在程序中如何組織數據,第二個就是常用演算法
總之,這門課的意義在於講解了編程時的思想,這些思想是跨越語言的。

學習這門課,沒什麼捷徑,就是讀代碼,然後用你會的任何一種編程語言實現它。當把書中的代碼讀懂80%的時候,你就會發現你的編程水平有很大的提高。

⑷ c語言版的數據結構和c++版的數據結構有什麼不同

C語言和C++描述數據結構最大的區別在於設置思想,C語言是一種結構化程序設計語言,而C++是一種面向對象的程序設計語言,它兩者的區別主要在於數據和操作的關系。

C語言是定義數據類型,數據類型定義變數,然後函數操作變數,換句話說C語言是「操作的數據」。
C++是定義類,類本身就具備操作,換句話說,C++是「數據的操作」。

⑸ 數據結構C語言版

完整的C代碼,希望對你有幫助

#include <stdio.h>
#include <stdlib.h>
#define List_Init_Size 10
typedef int ElemType;

typedef struct
{
ElemType *elem;
int listsize; /*線性表的長度*/
int length; /*當前元素個數*/
}SqList;

/*初始化線性表*/
int InitList(SqList *L)
{
L-> listsize=List_Init_Size;
L-> elem=(ElemType*)malloc(List_Init_Size*sizeof(ElemType));
if(!L-> elem)return -1;
L-> length=0;
return 1;
}

void Fen(SqList *L,SqList *Lb,SqList *Lc) //此函數實現分開放置
{
int i,j=0,k=0;
Lb->listsize=5; Lb->elem=(ElemType*)malloc(5*sizeof(ElemType));
Lc->listsize=5; Lc->elem=(ElemType*)malloc(5*sizeof(ElemType));
for(i=0;i<10;i++)
{
if(i%2==0)
{
Lc->elem[j]=L->elem[i];j++;
}
else if(i%2==1)
{
Lb->elem[k]=L->elem[i];k++;
}
}
}

void main()
{
int i,e;SqList L,Lb,Lc;
InitList(&L);
printf("請輸入十個數,用空格隔開:\n");
for(i=0;i<10;i++)
{
scanf("%d",&L.elem[i]);
}
printf("你構造的線性表是:\n");
for(i=0;i<10;i++)
{
printf( "%d ",L.elem[i]);
}
Fen( &L,&Lb,&Lc);

printf("\n線性表Lb為:\n");
for(i=0;i<5;i++)
{
printf( "%d; ",Lb.elem[i]);
}

printf("\n線性表Lc為:\n");
for(i=0;i<5;i++)
{
printf( "%d; ",Lc.elem[i]);
}

}

⑹ c語言數據結構pdf

強烈建議買國外版。數據結構(C語言版)—作者:(美)霍羅威茨等著,李建中等譯出版社:機械工業出版社本書的採用該類教材傳統的內容與組織結構。層次清晰,代碼質量很高。可以從書總的敘述看出作者的教學經驗。盡管有一定難度,但作者自始至終,都是從相對基礎知識開始講起,循序漸進。(比如c的數據存儲?式),這點比嚴蔚敏的那本好很多。最重要的是,書中的證明都很簡潔,與之相比嚴蔚敏的教材簡直就是噩夢(比如嚴的書中關於模式匹配的講解)。

⑺ 數據結構(C語言版)

1.類型定義有問題,將LinkList定義的都改為LNode *吧!
2.有一處else寫為elst了

幫你改了一下,正在是修改後的程序:
可以編譯通過,但不知道邏輯是否正確,自己檢查一下哈!
#include <stdio.h>
#include <malloc.h>
typedef char ElemType;
typedef struct LNode
{
int data;
struct LNode *next;
}LNode,*LinkList;
int ListInsert_L(LNode *head,int i,char e)
{
LNode *p=head;
LNode *s;
int j;
p=p->next;
for(j=1;j<1;j++)
{
if(p) p=p->next;
else break;
}
if(!p||i<1)
{
printf("請輸入正確的值\n");
return 0;
}
s=(LNode*)malloc(sizeof(LNode));
s->data=e;
s->next=p->next;
p->next=s;
return 1;
}
LinkList CreateList_L(LinkList head)
{
char temp;
LinkList p;
printf("請輸入結點值(輸入0結束):");
fflush(stdin);
scanf("%c",&temp);
while(temp!='0')
{
if(('A'<=temp&&temp<='Z')||('a'<=temp&&temp<='z'))
{
p=(LinkList)malloc(sizeof(LNode));
p->data=temp;
p->next=head->next;
head->next=p;
}
printf("請輸入結點值(輸入0結束):");
fflush(stdin);
scanf("%c",&temp);
}
return head;
}
int ListDel_L(LinkList head,int i)
{
LinkList p,tmp;
int j;
p=head->next;
tmp=head;
for(j=1;j<i;j++)
{
if(p)
{
p=p->next;
tmp=tmp->next;
}
else break;
}
if(!p||i<1)
{
printf("請輸入正確的值:\n");
return 0;
}
tmp->next=p->next;
free(p);
return 1;
}
void ListPint_L(LinkList head)
{
LinkList p;
int i=0;
p=head->next;
while(p!=NULL)
{
i++;
printf("第%d個元素是:",i);
printf("%c\n",p->data);
p=p->next;
}
}
void main()
{
int i;
char cmd,e;
LinkList head;
head=(LinkList)malloc(sizeof(LNode));
head->next=NULL;
CreateList_L(head);
ListPint_L(head);
do
{
printf("i,I...插入\n");
printf("d,D...刪除\n");
printf("q,Q...退出\n");
do
{
fflush(stdin);
scanf("%c",&cmd);
}while ((cmd!='d')&&(cmd!='D')&&(cmd!='i')&&(cmd!='I')&&(cmd!='q')&&(cmd!='Q'));
switch (cmd)
{
case 'i':
case'I':
printf("請輸入你要插入的數據:");
fflush(stdin);
scanf("%c",&e);
printf("請輸入你要插入的位置:");
scanf("%d",&i);
ListInsert_L(head,i,e);
ListPint_L(head);
break;
case 'd':
case 'D':
printf("請輸入你要刪除元素的位置:");
fflush(stdin);
scanf("%d",&i);
ListDel_L(head,i);
ListPint_L(head);
break;
}
}while ((cmd!='q')&&(cmd!='Q'));
}

⑻ 數據結構C語言版問題

用數據結構寫嗎?用就麻煩了,要不要,要了說一聲

熱點內容
公司伺服器怎麼搭建網站 發布:2025-01-27 13:24:43 瀏覽:920
光可以存儲 發布:2025-01-27 13:14:47 瀏覽:676
手機網盤加密文件 發布:2025-01-27 13:11:43 瀏覽:694
唐山有線機頂盒密碼是多少 發布:2025-01-27 13:10:25 瀏覽:251
如何讓電腦上擁有移動式伺服器 發布:2025-01-27 13:04:46 瀏覽:67
漫威超級戰爭如何配置核心組合 發布:2025-01-27 13:03:19 瀏覽:954
c語言五子棋程序 發布:2025-01-27 12:58:43 瀏覽:157
win10流媒體伺服器怎麼搭建 發布:2025-01-27 12:58:04 瀏覽:384
組合公式的演算法 發布:2025-01-27 12:45:50 瀏覽:278
落櫻小屋哪裡下載安卓 發布:2025-01-27 12:35:13 瀏覽:72