package main
import (
"fmt"
)//定義貓的結構體結點
type catnode struct
//新增
func insertcatnode(head *catnode, newcatnode *catnode)
temp := head
for
temp = temp.next
} temp.next = newcatnode
newcatnode.next = head
}//修改
func updatecatnode(head *catnode, newcatnode *catnode)
temp = temp.next
} newcatnode.next = temp.next.next
temp.next = newcatnode
}//輸出這個環形的鍊錶
func listcirclelink(head *catnode)
for
temp = temp.next }}
//刪除
func delcatnode(head *catnode, id int) *catnode
//注意點1、如果只有乙個節點,需要判斷是否刪除自身
if temp.next == head
return head //說明沒有要刪除id直接返回
} //將helper節點指向最後,用來操作記憶體位址的
for
helper = helper.next
} //如果有兩個包含兩個以上結點
flag := true
for
if temp.no == id
//刪除處理
helper.next = temp.next
//flag = false
break
} temp = temp.next
helper = helper.next
} //這裡還有比較一次
if flag else
} return head
}func main()
//建立乙隻貓
cat1 := &catnode
cat2 := &catnode
cat3 := &catnode
insertcatnode(head, cat1)
insertcatnode(head, cat2)
insertcatnode(head, cat3)
cat4 := &catnode
updatecatnode(head, cat4)
listcirclelink(head)
head = delcatnode(head, 4)
fmt.println()
fmt.println()
fmt.println()
listcirclelink(head)
}
資料結構之單向環形列表解決josef問題
該節點類中只有孩子的編號,以及指向下乙個節點的 指標 package com.ebiz.list.josepfu author yhj create 2019 07 17 22 21 表示節點的類 public class boy public intgetno public void setno ...
資料結構之單向佇列
注意事項 front頭指標指向的是佇列首元素的前乙個位置 rear尾指標指向隊尾元素 這是 實現 首先先建立乙個佇列類 class myquene 判斷佇列是否滿 public boolean isfull 判斷佇列是否為空 public boolean isempty 新增資料到佇列 public...
資料結構 05 單向環形鍊錶 約瑟夫問題
約瑟夫 環形鍊錶解決 小孩丟手絹 author anqi date 2020 4 15 09 54 59 description public class josepfu 建立環形單向鍊錶 class circlesinglelinkedlist 建立乙個輔助指標 幫助完成小孩出圈 boy help...