Hướng dẫn linear search in python using list - tìm kiếm tuyến tính trong python sử dụng danh sách

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc Given an array arr[] of n elements, write a function to search a given element x in arr[]. 

    Bàn luận

    Input : arr[] = {10, 20, 80, 30, 60, 50, 
                         110, 100, 130, 170}
              x = 110;
    Output : 6
    Element x is present at index 6
    
    Input : arr[] = {10, 20, 80, 30, 60, 50, 
                         110, 100, 130, 170}
               x = 175;
    Output : -1
    Element x is not present in arr[].

    Vấn đề: Cho một mảng mảng [] của n phần tử, hãy viết một hàm để tìm kiếm một phần tử X đã cho trong ARR []. & NBSP;linear search, i.e

    • Ví dụ:
    • Một cách tiếp cận đơn giản là thực hiện tìm kiếm tuyến tính, tức là
    • Bắt đầu từ phần tử ngoài cùng bên trái của ARR [] và từng người một so sánh x với mỗi phần tử của ARR []

    Nếu x khớp với một phần tử, hãy trả về chỉ mục.

    Hướng dẫn linear search in python using list - tìm kiếm tuyến tính trong python sử dụng danh sách
    Iterative Approach:

    Nếu X không phù hợp với bất kỳ yếu tố nào, hãy trả về -1.

    Ví dụ: Cách tiếp cận lặp:

    Python

    def search(arr, x):

        for i in range(

    Element found at index:  4
    
    0__

    Element found at index:  4
    
    2
    Element found at index:  4
    
    3
    Element found at index:  4
    
    4
    Element found at index:  4
    
    5
    Element found at index:  4
    
    5
    Element found at index:  4
    
    7

    Element found at index:  4
    
    8
    Element found at index:  4
    
    9 def0

    Nếu X không phù hợp với bất kỳ yếu tố nào, hãy trả về -1.

    Ví dụ: Cách tiếp cận lặp:

    Python

    def search(arr, x):

        for i in range(

    Element found at index:  4
    
    0__

    Element found at index:  4
    
    2
    Element found at index:  4
    
    3
    Element found at index:  4
    
    4
    Element found at index:  4
    
    5
    Element found at index:  4
    
    5
    Element found at index:  4
    
    7

    Element found at index:  4
    
    8
    Element found at index:  4
    
    9 def0

        

    Element found at index:  4
    
    9 def3def4

    Cách tiếp cận đệ quy: & nbsp;O(1) for iterative and O(n) for recursive.

    def def6


    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 linear search in python using list - tìm kiếm tuyến tính trong python sử dụng danh sách

    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 linear search in python using list - tìm kiếm tuyến tính trong python sử dụng danh sách

    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 linear search in python using list - tìm kiếm tuyến tính trong python sử dụng danh sách

    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.


    Làm thế nào để bạn tìm kiếm một danh sách tuyến tính trong Python?

    Thực hiện theo các bước dưới đây để thực hiện tìm kiếm tuyến tính trên danh sách và bộ dữ liệu ...
    Khởi tạo danh sách hoặc tuple và một phần tử ..
    Lặp lại trong danh sách hoặc tuple và kiểm tra phần tử ..
    Phá vỡ vòng lặp bất cứ khi nào bạn tìm thấy phần tử và đánh dấu một lá cờ ..
    Phần yếu tố in không tìm thấy tin nhắn dựa trên cờ ..

    Làm thế nào để bạn thực hiện tìm kiếm tuyến tính trong một danh sách?

    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 phần tử của danh sách cho đến khi tìm thấy phần tử mong muốn ...
    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 yếu tố ..
    Nếu x == k, hãy trả lại chỉ mục.....
    Khác, không tìm thấy trở lại ..

    Tìm kiếm tuyến tính trong danh sách 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.

    Tìm kiếm tuyến tính có thể được sử dụng trên danh sách được sắp xếp không?

    Trong một tìm kiếm tuyến tính, các yếu tố không cần phải được sắp xếp theo thứ tự sắp xếp.Điều kiện trước cho tìm kiếm nhị phân là các yếu tố phải được sắp xếp theo thứ tự được sắp xếp.Tìm kiếm tuyến tính có thể được thực hiện trên bất kỳ cấu trúc dữ liệu tuyến tính nào như một mảng, danh sách được liên kết, v.v.. The pre-condition for the binary search is that the elements must be arranged in a sorted order. The linear search can be implemented on any linear data structure such as an array, linked list, etc.