码迷,mamicode.com
首页 > 其他好文 > 详细

创建单链表

时间:2018-06-25 20:18:02      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:names   bre   data   ace   c++基础   space   str   链表   next   

还记得创建单链表的这些代码还是大学时候写过,现在再重新写一写,为面试做准备吧:

创建单链表的两种形式:头插法和尾插法

// 演示创建2种单链表的方式
// 【C++基础】单链表.cpp

#include "stdafx.h"
#include <iostream>
using namespace std;
struct link {
	int data;
	link *next;
};

//头插法建立单链表
link *creatLink_head(link *head) {
	link *node;
	int tmpData;
	cout << "输入元素,以空格分隔:";
	do {
		cin >> tmpData;
		if (tmpData == 0)
			break;

		node = new link;
		node->data = tmpData;
		node->next = head->next;
		head->next = node;

	} while (node->data != 0);
	return head->next;
}

//尾插法建立单链表
link *creatLink_tail(link *head) {
	link *node, *tail = head;
	int tmpData;
	cout << "输入元素,以空格分隔:";
	do {
		cin >> tmpData;
		if (tmpData == 0)
			break;
		node = new link;
		node->data = tmpData;
		tail->next = node;
		tail = node;
		tail->next = NULL;
	} while (tmpData != 0);
	return head->next;
}

//遍历输出
void printLink(link *p){
	while (p != NULL) {
		cout << p->data << "  ";
		p = p->next;
	}
	cout << endl;
}
int main()
{
	link *head, *p_head, *p_tail;
	head = new link;
	head->next = NULL;
	//方式1:头插法创建单链表
	//p_head = creatLink_head(head);
	//printLink(p_head);

	//方式2:尾插法创建单链表
	p_tail = creatLink_tail(head);
	printLink(p_tail);
	
    return 0;
}

 

创建单链表

标签:names   bre   data   ace   c++基础   space   str   链表   next   

原文地址:https://www.cnblogs.com/xuelisheng/p/9225810.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!