国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 編程 > Python > 正文

python環形單鏈表的約瑟夫問題詳解

2020-02-15 23:03:26
字體:
來源:轉載
供稿:網友

題目:

一個環形單鏈表,從頭結點開始向后,指針每移動一個結點,就計數加1,當數到第m個節點時,就把該結點刪除,然后繼續從下一個節點開始從1計數,循環往復,直到環形單鏈表中只剩下了一個結點,返回該結點。

這個問題就是著名的約瑟夫問題。

代碼:

首先給出環形單鏈表的數據結構:

class Node(object): def __init__(self, value, next=0):  self.value = value  self.next = next # 指針class RingLinkedList(object): # 鏈表的數據結構 def __init__(self):  self.head = 0 # 頭部 def __getitem__(self, key):  if self.is_empty():   print 'Linked list is empty.'   return  elif key < 0 or key > self.get_length():   print 'The given key is wrong.'   return  else:   return self.get_elem(key) def __setitem__(self, key, value):  if self.is_empty():   print 'Linked list is empty.'   return  elif key < 0 or key > self.get_length():   print 'The given key is wrong.'   return  else:   return self.set_elem(key, value) def init_list(self, data): # 按列表給出 data  self.head = Node(data[0])  p = self.head # 指針指向頭結點  for i in data[1:]:   p.next = Node(i) # 確定指針指向下一個結點   p = p.next # 指針滑動向下一個位置  p.next = self.head def get_length(self):  p, length = self.head, 0  while p != 0:   length += 1   p = p.next   if p == self.head:    break  return length def is_empty(self):  if self.head == 0:   return True  else:   return False def insert_node(self, index, value):  length = self.get_length()  if index < 0 or index > length:   print 'Can not insert node into the linked list.'  elif index == 0:   temp = self.head   self.head = Node(value, temp)   p = self.head   for _ in xrange(0, length):    p = p.next   print "p.value", p.value   p.next = self.head  elif index == length:   elem = self.get_elem(length-1)   elem.next = Node(value)   elem.next.next = self.head  else:   p, post = self.head, self.head   for i in xrange(index):    post = p    p = p.next   temp = p   post.next = Node(value, temp) def delete_node(self, index):  if index < 0 or index > self.get_length()-1:   print "Wrong index number to delete any node."  elif self.is_empty():   print "No node can be deleted."  elif index == 0:   tail = self.get_elem(self.get_length()-1)   temp = self.head   self.head = temp.next   tail.next = self.head  elif index == self.get_length()-1:   p = self.head   for i in xrange(self.get_length()-2):    p = p.next   p.next = self.head  else:   p = self.head   for i in xrange(index-1):    p = p.next   p.next = p.next.next def show_linked_list(self): # 打印鏈表中的所有元素  if self.is_empty():   print 'This is an empty linked list.'  else:   p, container = self.head, []   for _ in xrange(self.get_length()-1): #    container.append(p.value)    p = p.next   container.append(p.value)   print container def clear_linked_list(self): # 將鏈表置空  p = self.head  for _ in xrange(0, self.get_length()-1):   post = p   p = p.next   del post  self.head = 0 def get_elem(self, index):  if self.is_empty():   print "The linked list is empty. Can not get element."  elif index < 0 or index > self.get_length()-1:   print "Wrong index number to get any element."  else:   p = self.head   for _ in xrange(index):    p = p.next   return p def set_elem(self, index, value):  if self.is_empty():   print "The linked list is empty. Can not set element."  elif index < 0 or index > self.get_length()-1:   print "Wrong index number to set element."  else:   p = self.head   for _ in xrange(index):    p = p.next   p.value = value def get_index(self, value):  p = self.head  for i in xrange(self.get_length()):   if p.value == value:    return i   else:    p = p.next  return -1            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
国产视频二区在线观看| 国产三级在线免费观看| 精品女厕厕露p撒尿| 国产伦精品一区二区三区高清版禁 | 狠狠操狠狠色| 国产在线观看av| 免费av不卡在线观看| 国产伦精品一区二区三区高清版禁 | 国产美女福利在线观看| 国产嫩草在线视频| 国产精品入口麻豆免费| 永久免费av片在线观看全网站| av在线你懂的| 国产免费高清| 尤物视频在线观看视频| 国产在线黄色片| 92久久精品| 二区三区中文字幕| 99视频免费| 欧美视频免费一区二区三区| 中文字幕亚洲精品视频| 亚洲精品一线| ·天天天天操| 国产亚洲依依| 狠狠狠综合7777久夜色撩人| 亚洲字幕成人中文在线观看| 国产日韩网站| 成年人在线观看| eeuss影院网站免费观看| 国产天堂在线观看| 天天操天天曰| 麻豆网站在线免费观看| av片在线观看| 国产三级在线| 国产女主播在线| 国产精选一区二区三区不卡催乳| 日本三级视频网站| www黄在线观看| 日本福利午夜视频在线| 亚洲人在线播放| 亚洲欧美自拍另类| 国产精品国产国产aⅴ| 国产区视频在线观看| 国产福利免费在线观看| 91在线网站| 本道综合精品| 国产在线一二三区| 天天操人人干| 日本中文字幕在线看| 国产原创在线播放| 国产系列电影在线播放网址| 国产精品粉嫩av| 在线观看国产视频| 日本视频一二三区中文字幕| 青青青青在线| 最近中文字幕mv免费高清在线| 国产视频三级在线观看播放| 国产wwww| 黄色av网址在线免费观看| 狠狠色丁香婷婷| 国产区在线视频| av色在线观看| 中文字幕成人乱码在线电影| 精品卡一卡卡2卡3网站| 亚洲视频手机在线观看| 最新中文字幕在线视频| 中文字幕av高清| 成人超碰在线| 日本综合一区二区三区| 中文字幕在线资源| av日韩在线免费| 国产精品入口免费麻豆| 香蕉视频在线观看www| 黄色av网站在线免费观看| 国产黄在线观看免费观看不卡| 亚洲综合在线网| 中文字幕有码在线视频| 日本在线观看网站| 国产一级粉嫩xxxx| 欧美日韩国产亚洲沙发| 2021av在线| 国产特黄在线| 超碰在线网站| 免费在线超碰| 欧美日韩在线资源| 在线免费国产视频| 国产激情在线| 国产三线在线| 1区2区3区在线| 国产资源在线看| 久久99亚洲网美利坚合众国| eeuss影院在线观看| 96久久久久久| 天堂中文字幕在线| 国产男女无套在线播放| 黄色av网址在线免费观看| www黄在线观看| 亚洲永久免费网站| 在线免费国产| 亚洲视频网站在线| 四虎网站在线观看| 在线免费观看污| 亚洲videos| 欧美一级久久久久久久久大| 欧美日韩亚洲国内综合网| 亚洲电影先锋| 九九在线视频| 国产欧美日本亚洲精品一4区| 好吊日视频在线观看| 国产69精品久久久久孕妇国产69久久| 久热久精久品这里在线观看| 国产美女福利在线| 91网页在线观看| jlzzjlzz欧美| 尤物在线视频| 96精品视频| 麻豆精品不卡国产免费看| 国产在线你懂得| 中中文字幕av在线| 精品福利视频导航大全| 亚洲人在线播放| 国产中文字幕在线播放| 国产高清免费在线播放| 影音先锋日韩| 国产视频在线播放| 国产在线看片| 国产小视频在线观看| 国产精品一区二区资源| 最近高清中文在线字幕在线观看| 日本中文字幕在线观看| 国产区av在线| 精品国产丝袜高跟鞋| free性亚洲| 国产精品入口麻豆高清| av影视在线看| 国产美女自拍视频| 6699久久国产精品免费| www.中文字幕久久久| eeuss影院在线观看第一页| 九九热视频免费观看| 国产羞羞视频在线播放| 伊人精品影院| 91caoporn在线| av中文网站| 国产黄色一级电影| 操人视频91| 在线中文字幕视频| 天堂在线免费观看| www操操操| 亚洲伊人网在线观看| 国产日产一区二区三区| 青草av在线| 精品176二区| 国产精选在线观看| 热99re久久精品精品免费| 国产在线中文字幕| av在线二区| 99精品老司机免费视频| 丁香视频五月| 久久99亚洲网美利坚合众国 | 国产情侣高潮对白| 天天干天天操天天爽| 国产精品入口免费麻豆| 欧美精品日韩少妇| 久热精品免费视频| 麻豆视频在线观看免费网站| 四虎久久影院| 在线免费日韩| av网址在线看| 亚洲电影视频在线| www.狠狠色.com| 不卡av免费观看| 亚洲男人的天堂成人| 91国内精品久久久久| 国产美女视频一区二区二三区| 麻豆福利在线观看| 国产中文字幕av| 在线观看免费高清完整| 日韩国产成人| 狂野欧美性猛交xxxx乱大交| jizz国产| 天堂资源在线中文| 国产中文第一页| 国产三级视频在线| 2018中文字幕在线| wwwww在线观看免费视频| 久草亚洲一区| 国产精品美女视频免费观看软件| 91在线看片| 黄色在线视频观看网站| 国产日韩欧美精品一区二区三区| 91精选福利| 国产91大片| 精品a在线观看| 黄色毛片在线看| av大片在线播放| 国产一级大片| 在线黄色.com| 国产午夜在线视频| 成av人免费青青久|