연결 리스트의 모든 요소의 출현 횟수를 구해야 할 때, 연결 리스트에 요소를 추가하는 방법, 요소를 출력하는 방법, 연결 리스트에서 모든 요소의 발생을 찾는 방법은 다음과 같다. 정의됨.
아래는 동일한 데모입니다 -
예
class Node: def __init__(self, data): self.data = data self.next = None class LinkedList_structure: def __init__(self): self.head = None self.last_node = None def add_vals(self, data): if self.last_node is None: self.head = Node(data) self.last_node = self.head else: self.last_node.next = Node(data) self.last_node = self.last_node.next def print_it(self): curr = self.head while curr: print(curr.data) curr = curr.next def count_elem(self, key): curr = self.head count_val = 0 while curr: if curr.data == key: count_val = count_val + 1 curr = curr.next return count_val my_instance = LinkedList_structure() my_list = [56, 78, 98, 12, 34, 55, 0] for elem in my_list: my_instance.add_vals(elem) print('The linked list is : ') my_instance.print_it() key_val = int(input('Enter the data item ')) count_val = my_instance.count_elem(key_val) print('{0} occurs {1} time(s) in the list.'.format(key_val, count_val))
출력
The linked list is : 56 78 98 12 34 55 0 Enter the data item 0 0 occurs 1 time(s) in the list.
설명
-
'노드' 클래스가 생성됩니다.
-
필수 속성이 있는 또 다른 'LinkedList_structure' 클래스가 생성됩니다.
-
첫 번째 요소, 즉 'head'를 'None'으로 초기화하는 데 사용되는 'init' 기능이 있습니다.
-
스택에 값을 추가하는 데 도움이 되는 'add_vals'라는 메서드가 정의되어 있습니다.
-
콘솔에 연결된 목록의 값을 표시하는 데 도움이 되는 'print_it'이라는 또 다른 메서드가 정의되어 있습니다.
-
연결된 목록에서 모든 문자의 발생을 찾는 데 도움이 되는 'count_elem'이라는 또 다른 메서드가 정의되어 있습니다.
-
LinkedList_structure'의 인스턴스가 생성됩니다.
-
요소 목록이 정의됩니다.
-
목록이 반복되고 이러한 요소가 연결 목록에 추가됩니다.
-
요소가 콘솔에 표시됩니다.
-
이 연결 리스트에서 'count_elem' 메소드가 호출됩니다.
-
출력은 콘솔에 표시됩니다.