自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 双向循环链表创建

定义typedef struct linkLNode { int data; struct linkLNode *next; struct linkLNode *prior;} ListNode,*LinkList; 创建void createLinkList(LinkList &head){ head = new ListNode; head->prior = NULL; head->next = NULL;

2022-04-18 21:26:58 744

原创 循环链表应用-约瑟夫环

void Joseph(LinkList p,LinkList q,int m){ //p是首元结点,q是尾结点,m是报的数 int i=1; while(p!=q){ if(i==m){ q->next=q->next->next; delete p; p=q->next; i=1; } else{ q=p; p=p->next; i++; } } cout<<p->data;}...

2022-04-18 21:25:48 193

原创 求单链表长度

int listLength(LinkList &L){ int len = 0; LinkList p=L->next; //有头结点 //LinkList p=L;无头结点 while(p!= NULL) { len++; p = p->next; } return len;}

2022-04-18 21:25:01 470

原创 单链表排序(冒泡排序)

void sortList(LinkList &L,int len){ LinkList p=L->next; //有头结点 //LiinkList p=L;//无头结点 int i,j,temp; for(i=0;i<len-1;i++) { p=L->next; for(j=0;j<len-1-i;j++) { if(p->data>p->next->data){ temp=p->data; .

2022-04-18 21:24:13 280

原创 两个有序链表合并(相同内容删去)

void margeLinkList(LinkList &LA,LinkList &LB){ LinkList pa,pb,pc,LC; pa=LA->next; pb=LB->next; pc=LA; while(pa!=NULL&&pb!=NULL){ while(pa->next!=NULL&&pa->data==pa->next->data) pa=pa->next; while(p.

2022-04-18 21:21:40 387

原创 将单链表中数据域最大值移到链表末尾

void removeToEnd(LinkList &L){ListNode *q=L->next->next,*p=L->next->next->next,*r=q,*s; //q指向当前最大值,p指向要判断的结点,r是p的前驱,s是最大值的前驱 while(p)//寻找最大值结点及其前驱 { if(p->data>q->data) { s=r; q=p; } r=p; p=p->next; } .

2022-04-18 21:20:53 2611

原创 单链表查找

按值查找返回结点指针ListNode *LocateElem(LinkList L,int e) { LinkList p=L->next; //有头结点 while(p&&p->data!=e){ p=p->next; } return p;}返回位置int LocateElem(LinkList L,int e){ p=L->next; int j=1; while(p&&p->data!=e){

2022-04-18 21:19:15 123

原创 单链表插入结点

void insertList(LinkList &L,int i,int e){ LinkList p=L; int j=0; while(p&&j<i-1){ //在i-1位置插入 p=p->next; j++; }; s=new ListNode; s->data=e; s->next=p->next; p->next=s;}

2022-04-18 21:16:33 171

原创 打印单链表

void PrintList(LinkList &L){ LinkList p = L->next; while(p) { cout<<p->data<<" "; p = p->next; }}

2022-04-18 21:14:56 594

原创 单链表定义及创建

单链表定义typedef struct ListNode { int data; struct ListNode *next;} ListNode,*LinkList;尾插法创建有头结点单链表void createListFromTail(LinkList &L,int n){ L= new ListNode; L->next=NULL; LinkList p,r =L; for(int i=0;i<n;i++) { p=new Lis

2022-04-18 21:12:29 221

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除