Berikut ini adalah pertanyaan dari dikgungjunxd pada mata pelajaran TI untuk jenjang Sekolah Menengah Atas
Jawaban dan Penjelasan
Berikut ini adalah pilihan jawaban terbaik dari pertanyaan diatas.
Program python linked list: class LinkedList:
def __init__(self):
self.head = None
def addStart(self, data):
# create a temporary node
tempNode = Node(data)
tempNode.setLink(self.head)
self.head = tempNode
del tempNode
def addEnd(self, data):
start = self.head
tempNode = Node(data)
while start.getNextNode():
start = start.getNextNode()
start.setLink(tempNode)
del tempNode
return True
def display(self):
start = self.head
if start is None:
print("Empty List!!!")
return False
while start:
print(str(start.getData()), end=" ")
start = start.link
if start:
print("-->", end=" ")
print()
def length(self):
start = self.head
size = 0
while start:
size += 1
start = start.getNextNode()
# print(size)
return size
def indexing(self, data):
start = self.head
position = 1
while start:
if start.getData() == data:
return position
else:
position += 1
start = start.getNextNode()
def removing(self, item):
start = self.head
previous = None
found = False
while not found:
if start.getData() == item:
found = True
else:
previous = start
start = start.getNextNode()
if previous is None:
self.head = start.getNextNode()
else:
previous.setLink(start.getNextNode())
return found
def Maxim(self):
start = self.head
largest = start.getData()
while start:
if largest < start.getData():
largest = start.getData()
start = start.getNextNode()
return largest
def Minus(self):
start = self.head
smallest = start.getData()
while start:
if smallest > start.getData():
smallest = start.getData()
start = start.getNextNode()
return smallest
def pushing(self, data):
self.addToEnd(data)
return True
def popping(self):
start = self.head
previous = None
while start.getNextNode():
previous = start
start = start.getNextNode()
if previous is None:
self.head = None
else:
previous.setLink(None)
data = start.getData()
del start
return data
def atIndex(self, position):
start = self.head
position = int(position)
pos = 1
while pos != position:
start = start.getNextNode()
pos += 1
data = start.getData()
return data
def copy(self):
temp = LinkedList()
start = self.head
temp.addToStart(start.getData())
start = start.getNextNode()
while start:
temp.addToEnd(start.getData())
start = start.getNextNode()
return temp
def clear(self):
self.head = None
return True
def removePosition(self, position):
data = self.atIndex(position)
self.remove(data)
return data
def toString(self, seperator=""):
start = self.head
finalString = ""
while start:
tempString = start.getData()
finalString += str(tempString)
start = start.getNextNode()
# if next node exists only the append seperator
if start:
finalString += seperator
return finalString
def count(self, element):
start = self.head
count1 = 0
while start:
if start.getData() == element:
count1 += 1
start = start.getNextNode()
return count1
def toList(self):
start = self.head
tempList = []
while start:
tempElement = start.getData()
tempList.append(tempElement)
start = start.getNextNode()
return tempList
def toSet(self):
start = self.head
tempSet = set()
while start:
tempElement = start.getData()
if tempElement not in tempSet:
tempSet.add(tempElement)
start = start.getNextNode()
return tempSet
def reverse(self):
start = self.head
tempNode = None
previousNode = None
while start:
tempNode = start.getNextNode()
start.setLink(previousNode)
previousNode = start
start = tempNode
self.head = previousNode
return True
def sort(self):
start = self.head
beginNode = start
while beginNode:
tempNode = beginNode
tempNode2 = beginNode
smallest = beginNode.getData()
while tempNode:
if smallest > tempNode.getData():
smallest = tempNode.getData()
tempNode2 = tempNode
tempNode = tempNode.getNextNode()
temp = beginNode.getData()
beginNode.updateData(tempNode2.getData())
tempNode2.updateData(temp)
beginNode = beginNode.getNextNode()
def sorted(self):
start = self.head
tempList = self.copy()
tempList.sort()
return tempList
Penjelasan:
Daftar tertaut atau linked list ialah suatu struktur data linier. Tidak seperti array, yang juga merupakan komponen data linier serta campuran, daftar tertaut terbentuk dengan cara dinamis. Saat dimulai program, item daftar tertaut tidak punya suatu data. Elemen dari daftar tertaut (disebut node) dibuat dari waktu ke waktu, layaknya yang ditunjukkan.
Pelajari lebih lanjut
Pelajari lebih lanjut materi tentang penjelassan tentang linked list: yomemimo.com/tugas/29298273
#BelajarBersamaBrainly
Semoga dengan pertanyaan yang sudah terjawab oleh grahatama dapat membantu memudahkan mengerjakan soal, tugas dan PR sekolah kalian.
Apabila terdapat kesalahan dalam mengerjakan soal, silahkan koreksi jawaban dengan mengirimkan email ke yomemimo.com melalui halaman Contact
Last Update: Mon, 11 Jul 22