added linked-list-1 and others
parent
ccfc980be0
commit
be09c4152a
@ -0,0 +1,6 @@
|
||||
<h1 align="center">Linked List | SET 1 (INTRODUCTION) Source</h1>
|
||||
|
||||
[What It Is](#what-it-is)
|
||||
|
||||
## What It Is
|
||||
|
@ -0,0 +1,54 @@
|
||||
// ====================================================
|
||||
// Data-Structures-with-Go Copyright(C) 2017 Furkan Türkal
|
||||
// This program comes with ABSOLUTELY NO WARRANTY; This is free software,
|
||||
// and you are welcome to redistribute it under certain conditions; See
|
||||
// file LICENSE, which is part of this source code package, for details.
|
||||
// ====================================================
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
type Node struct {
|
||||
data int
|
||||
next *Node
|
||||
}
|
||||
|
||||
//Returns an initialized list
|
||||
func (n *Node) Init() *Node {
|
||||
n.data = -1
|
||||
return n
|
||||
}
|
||||
|
||||
//Returns an new list
|
||||
func New() *Node {
|
||||
return new(Node).Init()
|
||||
}
|
||||
|
||||
func printList(n *Node){
|
||||
for n != nil {
|
||||
fmt.Println(n.data)
|
||||
n = n.next
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
||||
//To allocate dynamically a new Node in C language : head = (struct Node*) malloc(sizeof(struct Node));
|
||||
head := New()
|
||||
second := New()
|
||||
third := New()
|
||||
|
||||
//Assign data in first node
|
||||
head.data = 1
|
||||
//Link first node with second node
|
||||
head.next = second
|
||||
|
||||
second.data = 2
|
||||
second.next = third
|
||||
|
||||
third.data = 3
|
||||
third.next = nil
|
||||
|
||||
printList(head)
|
||||
}
|
Loading…
Reference in New Issue