用python實現一個不排序的列表功能

來源:互聯網
上載者:User

標籤:列表功能   false   class   init   3.0   ati   size   while   struct   

#!/usr/bin/env python# -*- coding: utf-8 -*-# learn <<Problem Solving with Algorithms and Data Structures>># Release 3.0# chengang882 @ 2016-12-21# Completed implementation of a Unordered List ADTclass Node(object):    def __init__(self, init_data):        self.data = init_data        self.next = None    def get_data(self):        return self.data    def get_next(self):        return self.next    def set_data(self, new_data):        self.data = new_data    def set_next(self, new_next):        self.next = new_nextclass UnorderedList(object):    def __init__(self):        self.head = None            def is_empty(self):        return self.head == None    def add(self, item):        temp = Node(item)        temp.set_next(self.head)        self.head = temp    def size(self):        current = self.head        count = 0        while current != None:            count += 1            current = current.get_next()        return count    def search(self, item):        current = self.head        found = False        while current != None and not found:            if  current.get_data() == item:                found = True            else:                current = current.get_next()        return found    def remove(self, item):        current = self.head        previous = None        found = False        while not found:            if current.get_data() == item:                found = True            else:                previous = current                current = current.get_next()        if previous == None:            self.head = current.get_next()        else:            previous.set_next(current.get_next())    def show(self):        pass    if __name__ == "__main__":    ul = UnorderedList()    print(ul.is_empty())    ul.add(45)    ul.add(78)    ul.add("adfd")    ul.add("4345")    ul.add(3)    print(ul.is_empty())    print(ul.size())    print(ul.search(45))    print(ul.remove(78))    print(ul)

  

>>> TrueFalse5TrueNone<__main__.UnorderedList object at 0x0000000002F1C860>>>>

  

用python實現一個不排序的列表功能

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.