tugas ke 12

# Data array Linear search

data = [3, 9, 11, 15, 17, 23, 31, 35]


# Fungsi Linear Search

def linear_search(arr, x):

    for i, value in enumerate(arr):

        if value == x:

            return i

    return -1


# Kasus 1: Mencari X = 23

print("Kasus 1:", linear_search(data, 23))


# Kasus 2: Mencari X = 31

print("Kasus 2:", linear_search(data, 31))


OUTPUT : 

kasus 1: 5

kasus 2:6Tentu! Berikut adalah versi kode


 

Linear Search (Sederhana)


# Data array binary search

data = [39111517233135]


# Fungsi Linear Search

def linear_search(arr, x):

    for i, value in enumerate(arr):

        if value == x:

            return i

    return -1


# Kasus 1: Mencari X = 23

print("Kasus 1:", linear_search(data, 23))


# Kasus 2: Mencari X = 31

print("Kasus 2:", linear_search(data, 31))


Binary Search (Sederhana)


# Data array harus terurut

data = [39111517233135]


# Fungsi Binary Search

def binary_search(arr, x):

    left, right = 0, len(arr) - 1

    while left <= right:

        mid = (left + right) // 2

        if arr[mid] == x:

            return mid

        elif arr[mid] < x:

            left = mid + 1

        else:

            right = mid - 1

    return -1


# Kasus 1: Mencari X = 23

print("Kasus 1:", binary_search(data, 23))


# Kasus 2: Mencari X = 11

print("Kasus 2:", binary_search(data, 11))


OUTPUT : 

.

Penjelasan


1. Linear Search:

Tidak perlu variabel tambahan, cukup iterasi langsung melalui array.

Menggunakan fungsi enumerate() untuk mendapatkan indeks dan nilai elemen secara bersamaan.

2. Binary Search:

Memanfaatkan variabel left dan right untuk mempersempit pencarian.

Hanya menggunakan satu perulangan while untuk membuatnya lebih ringkas.


Kedua versi ini lebih pendek tetapi tetap mudah dipahami. Jika perlu modifikasi lebih lanjut, silakan beri tahu!


Komentar

Postingan populer dari blog ini

TUGAS 6

UTS