簡單的資料結構應用,使用鍊錶實現了"環"結構,**如下:
package com.wly.algorithmbase.datastructure;
/** * 鍊錶實現無限迴圈的"環",結構從左(head)到右(tail)
* @author wly
* @param 實體類
*/class chaincycle
system.out.println("向左遍歷:");
for(int i=0;i<6;i++)
system.out.println("刪除元素,並向右遍歷:");
chain.remove();
for(int i=0;i<6;i++) }
public e next() else
if(current != null) else }
public e prev() else
if(current != null) else }
/*** 插入節點到尾節點
* @param node
*/public void insert(nodenode) else
msize ++; }
/*** 移除尾節點
*/public void remove() else if(msize == 1) else }
public int size()
}/**
* 節點類,封裝了實體類e
* @param */
class node
}/**
* 測試實體類
*/class student
}
執行結果:向右遍歷:
a_1b_2
c_3a_1
b_2c_3
向左遍歷:
b_2a_1
c_3b_2
a_1c_3
刪除元素,並向右遍歷:
b_2a_1
b_2a_1
b_2a_1
o啦~~~
謝謝!!
C資料結構迴圈鍊錶實現約瑟夫環
c資料結構迴圈鍊錶實現約瑟夫環 本文 均在turbo c 2.0 的環境下執行通過,並得到正確結果,本程式為用迴圈鍊錶實現約瑟夫環,即有m個人站成乙個圓環,從某人 佇列第乙個 開程式設計客棧始報數,約定從某數開始的第n個人出列,他的下乙個再從一開始報,然再乙個報道n的人出列,本程式結果為人員出列順序...
資料結構 迴圈鍊錶,約瑟夫環
一 迴圈鍊錶 include stdio.h include stdlib.h typedef struct node node 初始化迴圈鍊錶 void ds init node pnode 初始化迴圈鍊錶,pnode 鍊錶上 else 返回結點所在位置 int ds search node pn...
資料結構系列之鍊錶 迴圈鍊錶(約瑟夫環)
已知n個人,編號1到n,圍坐在一張圓桌周圍,從k開始報數,數到m的人出列,下乙個人又從k開始報數,到m出列,直至全出列。步驟 1.建立乙個有n個鏈節點無頭節點的迴圈鍊錶 2.確定第乙個報數人位置 3.不斷從鏈中刪除節點至鍊錶為空 n為總人數,k為第乙個報數人,m為出列者喊的數 linklist p,...