丢手绢问题

class Node(object):
  def __init__(self,value,p=0):
    self.val=value
    self.next=p
class Linklist(object):
  def __init__(self):
    self.head=None

  def inital(self,value):
    self.head=Node(value[0])
    p=self.head
    for i in value[1:]:
      p = p.next
      p=Node(i)
    p.next=self.head
    return self.head
     
  def isempty(self):
    if self.head.next==0:
      return 1
    else:
      return 0
   
  def delete(self,value,k):
    if self.isempty():
      exit(0)
    if k==1:
      return value[-1]
    else:
      p=self.inital(value)
      while True:
        for i in range(k-2):
          p=p.next
        p.next=p.next.next    删除改位置节点
        p=p.next   #步进到下一节点
        if p.next=p:
          break
      return p.val

猜你喜欢

转载自blog.csdn.net/weixin_38740463/article/details/86607041