Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?

Python là một trong những ngôn ngữ phổ biến và mạnh mẽ nhất. Phải mất một vài dòng để thực thi mã, điều này làm cho nó nhiều ngôn ngữ thân thiện với người dùng. Trong hướng dẫn này, chúng tôi sẽ tìm hiểu tìm kiếm tuyến tính trong Python. Tìm kiếm là một kỹ thuật để tìm ra phần tử cụ thể có mặt hoặc không trong danh sách đã cho.

Có hai loại tìm kiếm -

  • Tìm kiếm tuyến tính
  • Tìm kiếm nhị phân

Cả hai kỹ thuật đều được sử dụng rộng rãi để tìm kiếm một yếu tố trong danh sách đã cho.

Tìm kiếm tuyến tính là gì?

Tìm kiếm tuyến tính là một phương pháp tìm các yếu tố trong danh sách. Nó cũng được gọi là một tìm kiếm tuần tự. & nbsp; Đây là thuật toán tìm kiếm đơn giản nhất vì nó tìm kiếm phần tử mong muốn theo cách tuần tự.

Nó so sánh từng yếu tố với giá trị mà chúng tôi đang tìm kiếm. Nếu cả hai đều được khớp, phần tử được tìm thấy và thuật toán trả về vị trí chỉ mục của khóa.

Khái niệm tìm kiếm tuyến tính

Hãy hiểu các bước sau để tìm khóa phần tử = 7 trong danh sách đã cho.

Bước - 1: Bắt đầu tìm kiếm từ phần tử đầu tiên và phím kiểm tra = 7 với mỗi phần tử của danh sách x. Start the search from the first element and Check key = 7 with each element of list x.

Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?

Bước - 2: Nếu tìm thấy phần tử, hãy trả về vị trí chỉ mục của khóa. If element is found, return the index position of the key.

Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?

Bước - 3: Nếu không tìm thấy phần tử, phần tử trở lại không có mặt. If element is not found, return element is not present.

Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?

Thuật toán tìm kiếm tuyến tính

Có danh sách n phần tử và giá trị khóa sẽ được tìm kiếm.

Dưới đây là thuật toán tìm kiếm tuyến tính.

Chương trình Python

Hãy hiểu việc triển khai Python sau đây của thuật toán tìm kiếm tuyến tính.

Chương trình

Output:

Element found at index:  4

Explanation:

Trong mã trên, chúng tôi đã tạo một hàm linear_search (), có ba đối số - list1, độ dài của danh sách và số để tìm kiếm. Chúng tôi đã xác định cho vòng lặp và lặp từng phần tử và so sánh với giá trị khóa. Nếu phần tử được tìm thấy, hãy trả về chỉ số khác trả về -1, có nghĩa là phần tử không có trong danh sách.linear_Search(), which takes three arguments - list1, length of the list, and number to search. We defined for loop and iterate each element and compare to the key value. If element is found, return the index else return -1 which means element is not present in the list.

Độ phức tạp tìm kiếm tuyến tính

Độ phức tạp về thời gian của thuật toán tìm kiếm tuyến tính -

  • Trường hợp cơ sở - O (1)
  • Trường hợp trung bình - O (n)
  • Trường hợp xấu nhất -o (n)

Thuật toán tìm kiếm tuyến tính phù hợp cho danh sách nhỏ hơn (

Để có được kết quả nhanh, chúng ta có thể sử dụng thuật toán tìm kiếm nhị phân.

Chúng tôi đã thảo luận về khái niệm cơ bản của tìm kiếm tuyến tính. Trong hướng dẫn tiếp theo, chúng tôi sẽ tìm hiểu thuật toán tìm kiếm thứ hai và phổ biến nhất có tên là tìm kiếm nhị phân.


Trong hướng dẫn này, bạn sẽ tìm hiểu về tìm kiếm tuyến tính. Ngoài ra, bạn sẽ tìm thấy các ví dụ làm việc của tìm kiếm tuyến tính C, C ++, Java và Python.

Tìm kiếm tuyến tính là một thuật toán tìm kiếm tuần tự nơi chúng tôi bắt đầu từ một đầu và kiểm tra mọi yếu tố của danh sách cho đến khi tìm thấy phần tử mong muốn. Nó là thuật toán tìm kiếm đơn giản nhất.


Tìm kiếm tuyến tính hoạt động như thế nào?

Các bước sau đây được theo dõi để tìm kiếm một phần tử k = 1 trong danh sách bên dưới.

Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?
Mảng sẽ được tìm kiếm
  1. Bắt đầu từ phần tử đầu tiên, so sánh k với mỗi phần tử x. So sánh với từng phần tử
    Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?
    Compare with each element
  2. Nếu x == k, trả lại chỉ mục. Yếu tố tìm thấy
    Hướng dẫn what is linear search in python with example? - tìm kiếm tuyến tính trong python với ví dụ là gì?
    Element found
  3. Khác, không tìm thấy trở lại.

Thuật toán tìm kiếm tuyến tính

LinearSearch(array, key)
  for each item in the array
    if item == value
      return its index

Ví dụ về Python, Java và C/C ++

# Linear Search in Python


def linearSearch(array, n, x):

    # Going through array sequencially
    for i in range(0, n):
        if (array[i] == x):
            return i
    return -1


array = [2, 4, 0, 1, 9]
x = 1
n = len(array)
result = linearSearch(array, n, x)
if(result == -1):
    print("Element not found")
else:
    print("Element found at index: ", result)

// Linear Search in Java

class LinearSearch {
  public static int linearSearch(int array[], int x) {
  int n = array.length;

  // Going through array sequencially
  for (int i = 0; i < n; i++) {
    if (array[i] == x)
    return i;
  }
  return -1;
  }

  public static void main(String args[]) {
  int array[] = { 2, 4, 0, 1, 9 };
  int x = 1;

  int result = linearSearch(array, x);

  if (result == -1)
    System.out.print("Element not found");
  else
    System.out.print("Element found at index: " + result);
  }
}

// Linear Search in C

#include 

int search(int array[], int n, int x) {
  
  // Going through array sequencially
  for (int i = 0; i < n; i++)
    if (array[i] == x)
      return i;
  return -1;
}

int main() {
  int array[] = {2, 4, 0, 1, 9};
  int x = 1;
  int n = sizeof(array) / sizeof(array[0]);

  int result = search(array, n, x);

  (result == -1) ? printf("Element not found") : printf("Element found at index: %d", result);
}

// Linear Search in C++

#include 
using namespace std;

int search(int array[], int n, int x) {

  // Going through array sequencially
  for (int i = 0; i < n; i++)
    if (array[i] == x)
      return i;
  return -1;
}

int main() {
  int array[] = {2, 4, 0, 1, 9};
  int x = 1;
  int n = sizeof(array) / sizeof(array[0]);

  int result = search(array, n, x);

  (result == -1) ? cout << "Element not found" : cout << "Element found at index: " << result;
}


Sự phức tạp tìm kiếm tuyến tính

Độ phức tạp về thời gian: O (n) O(n)

Độ phức tạp không gian: O(1) O(1)


Ứng dụng tìm kiếm tuyến tính

  1. Để tìm kiếm các hoạt động trong các mảng nhỏ hơn (

Tìm kiếm tuyến tính là gì?

Tìm kiếm tuyến tính là gì? Tìm kiếm tuyến tính là một phương pháp tìm các yếu tố trong danh sách. Nó cũng được gọi là một tìm kiếm tuần tự. Đây là thuật toán tìm kiếm đơn giản nhất vì nó tìm kiếm phần tử mong muốn theo cách tuần tự.

Làm thế nào để thực hiện thuật toán tìm kiếm tuyến tính trong Python?

Dưới đây là thuật toán tìm kiếm tuyến tính. Hãy hiểu việc triển khai Python sau đây của thuật toán tìm kiếm tuyến tính. Trong mã trên, chúng tôi đã tạo một hàm linear_search (), có ba đối số - list1, độ dài của danh sách và số để tìm kiếm. Chúng tôi đã xác định cho vòng lặp và lặp từng phần tử và so sánh với giá trị khóa.

Có bao nhiêu yếu tố có thể được áp dụng cho một tìm kiếm tuyến tính?

Nếu số lượng các yếu tố được áp dụng với tìm kiếm tuyến tính xuất hiện là hơn 10000 phần tử trong danh sách và phần tử có mặt ở phần cuối của toàn bộ danh sách thì đó sẽ là một tình huống xấu nhất và sẽ tiêu tốn rất nhiều thời gian cho bất kỳ Thao tác mà không mong muốn.

Những nhược điểm của thuật toán tìm kiếm tuyến tính là gì?

Một thuật toán tìm kiếm tuyến tính rất tốn kém về độ phức tạp về thời gian. Nó có độ phức tạp O (n) trong trường hợp xấu nhất trong đó n là số lượng các yếu tố trong danh sách. Một nhược điểm khác là nó không xem xét sự sắp xếp của các yếu tố trong danh sách.

Tìm kiếm tuyến tính với ví dụ là gì?

Ví dụ về thuật toán tìm kiếm tuyến tính Bước 1: Phần tử được tìm kiếm 39 được so sánh với phần tử đầu tiên của một mảng, là 13. Không tìm thấy trận đấu, bây giờ bạn chuyển sang phần tử tiếp theo và cố gắng thực hiện so sánh. Bước 2: Bây giờ, phần tử tìm kiếm 39 được so sánh với phần tử thứ hai của một mảng, 9.Step 1: The searched element 39 is compared to the first element of an array, which is 13. The match is not found, you now move on to the next element and try to implement a comparison. Step 2: Now, search element 39 is compared to the second element of an array, 9.

Tìm kiếm tuyến tính trong Python là gì?

Tìm kiếm tuyến tính là một phương pháp tìm các yếu tố trong danh sách.Nó cũng được gọi là một tìm kiếm tuần tự.Đây là thuật toán tìm kiếm đơn giản nhất vì nó tìm kiếm phần tử mong muốn theo cách tuần tự.a method of finding elements within a list. It is also called a sequential search. It is the simplest searching algorithm because it searches the desired element in a sequential manner.

Tìm kiếm trong Python với ví dụ là gì?

Khoa học dữ liệu thực tế sử dụng tìm kiếm Python là một điều cần thiết rất cơ bản khi bạn lưu trữ dữ liệu trong các cấu trúc dữ liệu khác nhau.Cách tiếp cận đơn giản nhất là đi qua mọi yếu tố trong cấu trúc dữ liệu và khớp với giá trị bạn đang tìm kiếm.Điều này được gọi là tìm kiếm tuyến tính.go across every element in the data structure and match it with the value you are searching for. This is known as Linear search.

Tìm kiếm tuyến tính giải thích chi tiết là gì?

Trong khoa học máy tính, tìm kiếm tuyến tính hoặc tìm kiếm tuần tự là một phương pháp để tìm một yếu tố trong danh sách.Nó tuần tự kiểm tra từng yếu tố của danh sách cho đến khi tìm thấy một trận đấu hoặc toàn bộ danh sách đã được tìm kiếm.a method for finding an element within a list. It sequentially checks each element of the list until a match is found or the whole list has been searched.