藤本  結衣

藤本 結衣

1636296420

線形検索のためのPythonプログラム

このチュートリアルでは、Pythonで線形検索プログラムを作成する方法を学習します。

まず、線形検索(シーケンシャル検索とも呼ばれます)は、リストまたは配列内の要素を見つけるために使用されます。一致するものが見つかるか、リスト全体が検索されるまで、リストの各要素を1つずつ/順番にチェックします。

線形探索アルゴリズム

以下の手順に従って線形検索を実装します。

  • ループを使用してリスト/配列をトラバースします。
  • すべての反復で、target 値をリスト/配列の指定された値に関連付け ます。
    • 値が一致する場合は、リスト/配列の現在のインデックスを返します。
    • それ以外の場合は、次の配列/リスト要素に移動します。
  • 一致するものが見つからない場合は、を返し -1ます。

線形検索のためのPythonプログラム

  • whileループを使用した線形検索用のPythonプログラム
  • Forループを使用した線形検索用のPythonプログラム
  • 再帰を使用したPythonプログラムでの線形検索

whileループを使用した線形検索用のPythonプログラム

# python program for linear search using while loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
i = 0
flag = False
 
while i < len(lst):
    if lst[i] == x:
        flag = True
        break
  
    i = i + 1
  
if flag == 1:
    print('{} was found at index {}.'.format(x, i))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  5
Enter the array of 0 element :-  10
Enter the array of 1 element :-  23
Enter the array of 2 element :-  56
Enter the array of 3 element :-  89
Enter the array of 4 element :-  200
Enter number to search in list :-  89
89 was found at index 3.

Forループを使用した線形検索用のPythonプログラム

# python program for linear search using for loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
i = 0
flag = False
 
for i in range(len(lst)):
    if lst[i] == x:
        flag = True
        break
  
if flag == 1:
    print('{} was found at index {}.'.format(x, i))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  6
Enter the array of 0 element :-  25
Enter the array of 1 element :-  50
Enter the array of 2 element :-  100
Enter the array of 3 element :-  200
Enter the array of 4 element :-  250
Enter the array of 5 element :-  650
Enter number to search in list :-  200
200 was found at index 3.

再帰を使用したPythonプログラムでの線形検索

# python program for linear search using for loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
# Recursive function to linear search x in arr[l..r]  
def recLinearSearch( arr, l, r, x): 
    if r < l: 
        return -1
    if arr[l] == x: 
        return l 
    if arr[r] == x: 
        return r 
    return recLinearSearch(arr, l+1, r-1, x) 
     
 
res = recLinearSearch(lst, 0, len(lst)-1, x) 
  
if res != -1:
    print('{} was found at index {}.'.format(x, res))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  5
Enter the array of 0 element :-  14
Enter the array of 1 element :-  25
Enter the array of 2 element :-  63
Enter the array of 3 element :-  42
Enter the array of 4 element :-  78
Enter number to search in list :-  78
78 was found at index 4.

リンク: https://www.tutsmake.com/linear-search-in-python/

#python 

What is GEEK

Buddha Community

線形検索のためのPythonプログラム
藤本  結衣

藤本 結衣

1636296420

線形検索のためのPythonプログラム

このチュートリアルでは、Pythonで線形検索プログラムを作成する方法を学習します。

まず、線形検索(シーケンシャル検索とも呼ばれます)は、リストまたは配列内の要素を見つけるために使用されます。一致するものが見つかるか、リスト全体が検索されるまで、リストの各要素を1つずつ/順番にチェックします。

線形探索アルゴリズム

以下の手順に従って線形検索を実装します。

  • ループを使用してリスト/配列をトラバースします。
  • すべての反復で、target 値をリスト/配列の指定された値に関連付け ます。
    • 値が一致する場合は、リスト/配列の現在のインデックスを返します。
    • それ以外の場合は、次の配列/リスト要素に移動します。
  • 一致するものが見つからない場合は、を返し -1ます。

線形検索のためのPythonプログラム

  • whileループを使用した線形検索用のPythonプログラム
  • Forループを使用した線形検索用のPythonプログラム
  • 再帰を使用したPythonプログラムでの線形検索

whileループを使用した線形検索用のPythonプログラム

# python program for linear search using while loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
i = 0
flag = False
 
while i < len(lst):
    if lst[i] == x:
        flag = True
        break
  
    i = i + 1
  
if flag == 1:
    print('{} was found at index {}.'.format(x, i))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  5
Enter the array of 0 element :-  10
Enter the array of 1 element :-  23
Enter the array of 2 element :-  56
Enter the array of 3 element :-  89
Enter the array of 4 element :-  200
Enter number to search in list :-  89
89 was found at index 3.

Forループを使用した線形検索用のPythonプログラム

# python program for linear search using for loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
i = 0
flag = False
 
for i in range(len(lst)):
    if lst[i] == x:
        flag = True
        break
  
if flag == 1:
    print('{} was found at index {}.'.format(x, i))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  6
Enter the array of 0 element :-  25
Enter the array of 1 element :-  50
Enter the array of 2 element :-  100
Enter the array of 3 element :-  200
Enter the array of 4 element :-  250
Enter the array of 5 element :-  650
Enter number to search in list :-  200
200 was found at index 3.

再帰を使用したPythonプログラムでの線形検索

# python program for linear search using for loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
# Recursive function to linear search x in arr[l..r]  
def recLinearSearch( arr, l, r, x): 
    if r < l: 
        return -1
    if arr[l] == x: 
        return l 
    if arr[r] == x: 
        return r 
    return recLinearSearch(arr, l+1, r-1, x) 
     
 
res = recLinearSearch(lst, 0, len(lst)-1, x) 
  
if res != -1:
    print('{} was found at index {}.'.format(x, res))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  5
Enter the array of 0 element :-  14
Enter the array of 1 element :-  25
Enter the array of 2 element :-  63
Enter the array of 3 element :-  42
Enter the array of 4 element :-  78
Enter number to search in list :-  78
78 was found at index 4.

リンク: https://www.tutsmake.com/linear-search-in-python/

#python