عملیات در آرایه: جستجو، درج و حذف — به زبان ساده

۳۸۳۷ بازدید
آخرین به‌روزرسانی: ۱۹ شهریور ۱۴۰۲
زمان مطالعه: ۹ دقیقه
دانلود PDF مقاله
عملیات در آرایه: جستجو، درج و حذف — به زبان سادهعملیات در آرایه: جستجو، درج و حذف — به زبان ساده

در این مطلب، انواع عملیات در آرایه شامل جستجو، درج و حذف در آرایه نامرتب مورد بررسی قرار گرفته است. همچنین، پیاده‌سازی این موارد در زبان‌های برنامه‌نویسی گوناگون شامل ++C، «جاوا» (Java)، «پایتون» (Python)، «سی‌شارپ» (#C) و «پی‌اچ‌پی» (PHP) انجام شده است.

997696

عملیات در آرایه: جستجو در آرایه نامرتب

در یک آرایه نامرتب، عملیات جستجو را می‌توان با پیمایش خطی از اولین تا آخرین عنصر انجام داد.

مثال زیر در این راستا قابل توجه است.

عملیات در آرایه: جستجو، درج و حذف

جستجو در آرایه نامرتب در ++C

1// C++ program to implement linear  
2// search in unsorted array 
3#include<bits/stdc++.h> 
4using namespace std; 
5  
6// Function to implement search operation  
7int findElement(int arr[], int n,  
8                int key) 
9{ 
10    int i; 
11    for (i = 0; i < n; i++) 
12        if (arr[i] == key) 
13            return i; 
14  
15    return -1; 
16} 
17  
18// Driver Code 
19int main() 
20{ 
21    int arr[] = {12, 34, 10, 6, 40}; 
22    int n = sizeof(arr) / sizeof(arr[0]); 
23  
24    // Using a last element as search element 
25    int key = 40; 
26    int position = findElement(arr, n, key); 
27  
28    if (position == - 1) 
29        cout << "Element not found"; 
30    else
31        cout << "Element Found at Position: " 
32             << position + 1; 
33  
34    return 0; 
35} 
36  
37// This code is contributed  
38// by Akanksha Rai

جستجو در آرایه نامرتب در C

1// C program to implement linear  
2// search in unsorted array 
3#include<stdio.h> 
4  
5// Function to implement search operation  
6int findElement(int arr[], int n,  
7                int key) 
8{ 
9    int i; 
10    for (i = 0; i < n; i++) 
11        if (arr[i] == key) 
12            return i; 
13  
14    return -1; 
15} 
16  
17// Driver Code 
18int main() 
19{ 
20    int arr[] = {12, 34, 10, 6, 40}; 
21    int n = sizeof(arr) / sizeof(arr[0]); 
22  
23    // Using a last element as search element 
24    int key = 40; 
25    int position = findElement(arr, n, key); 
26  
27    if (position == - 1) 
28        printf("Element not found"); 
29    else
30        printf("Element Found at Position: %d", position + 1 ); 
31  
32    return 0; 
33}

جستجو در آرایه نامرتب در جاوا

1// Java program to implement linear  
2// search in unsorted arrays 
3  
4class Main 
5{ 
6    // Function to implement  
7    // search operation  
8    static int findElement(int arr[], int n,  
9                           int key) 
10    { 
11        for (int i = 0; i < n; i++) 
12            if (arr[i] == key) 
13                return i; 
14       
15        return -1; 
16    } 
17       
18    // Driver Code 
19    public static void main(String args[]) 
20    { 
21        int arr[] = {12, 34, 10, 6, 40}; 
22        int n = arr.length; 
23       
24        // Using a last element as search element 
25        int key = 40; 
26        int position = findElement(arr, n, key); 
27       
28        if (position == - 1) 
29            System.out.println("Element not found"); 
30        else
31            System.out.println("Element Found at Position: " 
32                                + (position + 1)); 
33    } 
34} 

جستجو در آرایه نامرتب در پایتون

1# Python program for searching in 
2# unsorted array 
3  
4def findElement(arr, n, key): 
5    for i in range (n): 
6        if (arr[i] == key): 
7            return i 
8    return -1
9   
10arr = [12, 34, 10, 6, 40] 
11key = 40
12n = len(arr) 
13   
14#search operation 
15index = findElement(arr, n, key) 
16if index != -1: 
17    print ("element found at position: " + str(index + 1 ))  
18else: 
19    print ("element not found") 
20      
21# Thanks to Aditi Sharma for contributing  
22# this code

جستجو در آرایه نامرتب در #C

1// C# program to implement linear  
2// search in unsorted arrays 
3using System; 
4  
5class main 
6{ 
7    // Function to implement  
8    // search operation  
9    static int findElement(int []arr, int n,  
10                           int key) 
11    { 
12        for (int i = 0; i < n; i++) 
13            if (arr[i] == key) 
14                return i; 
15      
16        return -1; 
17    } 
18      
19    // Driver Code 
20    public static void Main() 
21    { 
22        int []arr = {12, 34, 10, 6, 40}; 
23        int n = arr.Length; 
24      
25        // Using a last element as  
26        // search element 
27        int key =40; 
28        int position = findElement(arr,n,key); 
29      
30        if (position == - 1) 
31        Console.WriteLine("Element not found"); 
32        else
33        Console.WriteLine("Element Found at Position: "
34                            + (position+1)); 
35    } 
36} 
37  
38//  This code is contributed by vt_m.

جستجو در آرایه نامرتب در PHP

1<?php 
2// PHP program to implement linear  
3// search in unsorted array 
4  
5// Function to implement 
6// search operation  
7function findElement($arr, $n, $key) 
8{ 
9    $i; 
10    for ($i = 0; $i < $n; $i++) 
11        if ($arr[$i] == $key) 
12            return $i; 
13  
14    return -1; 
15} 
16  
17// Driver Code 
18$arr = array(12, 34, 10, 6, 40); 
19$n = sizeof($arr); 
20  
21// Using a last element 
22// as search element 
23$key = 40; 
24$position = findElement($arr, $n, $key); 
25  
26if ($position == - 1) 
27    echo("Element not found"); 
28else
29    echo("Element Found at Position: " . ($position + 1)); 
30  
31// This code is contributed by Ajit. 
32?> 

خروجی قطعه کدهای بالا به صورت زیر است:

Element Found at Position: 5

پیچیدگی زمانی جستجو در آرایه نامرتب با استفاده از روشی که پیاده‌سازی آن در بالا انجام شده، از درجه (O(n است.

عملیات در آرایه: درج در آرایه نامرتب

در یک آرایه نامرتب، عملیات درج (Insert) در مقایسه با یک آرایه مرتب، سریع‌تر انجام می‌شود؛

زیرا نیازی به بررسی موقعیتی که عنصر باید در آن قرار بگیرد نیست.

عملیات در آرایه: جستجو، درج و حذف

درج در آرایه نامرتب در C

1// C program to implement insert  
2// operation in an unsorted array. 
3#include<stdio.h> 
4  
5// Inserts a key in arr[] of given capacity. 
6// n is current size of arr[]. This  
7// function returns n + 1 if insertion 
8// is successful, else n. 
9int insertSorted(int arr[], int n,  
10                 int key, 
11                 int capacity) 
12{ 
13  
14    // Cannot insert more elements if n is  
15    // already more than or equal to capcity 
16    if (n >= capacity) 
17       return n; 
18  
19    arr[n] = key; 
20  
21    return (n + 1); 
22} 
23  
24// Driver Code 
25int main() 
26{ 
27    int arr[20] = {12, 16, 20, 40, 50, 70}; 
28    int capacity = sizeof(arr) / sizeof(arr[0]); 
29    int n = 6; 
30    int i, key = 26; 
31  
32    printf("\n Before Insertion: "); 
33    for (i = 0; i < n; i++) 
34        printf("%d  ", arr[i]); 
35  
36    // Inserting key 
37    n = insertSorted(arr, n, key, capacity); 
38  
39    printf("\n After Insertion: "); 
40    for (i = 0; i < n; i++) 
41        printf("%d  ",arr[i]); 
42  
43    return 0; 
44}

درج در آرایه نامرتب در جاوا

1// Java program to implement insert  
2// operation in an unsorted array. 
3  
4class Main 
5{ 
6    // Function to insert a given key in  
7    // the array. This function returns n+1  
8    // if insertion is successful, else n.  
9    static int insertSorted(int arr[], int n,  
10                            int key,  
11                            int capacity) 
12    { 
13  
14        // Cannot insert more elements if n  
15        // is already more than or equal to  
16        // capcity 
17        if (n >= capacity) 
18           return n; 
19       
20        arr[n] = key; 
21       
22        return (n + 1); 
23    } 
24       
25    // Driver Code 
26    public static void main (String[] args) 
27    {    
28        int[] arr = new int[20];  
29        arr[0] = 12; 
30        arr[1] = 16; 
31        arr[2] = 20; 
32        arr[3] = 40;  
33        arr[4] = 50; 
34        arr[5] = 70; 
35        int capacity = 20; 
36        int n = 6; 
37        int i, key = 26; 
38       
39        System.out.print("Before Insertion: "); 
40        for (i = 0; i < n; i++) 
41            System.out.print(arr[i]+" "); 
42       
43        // Inserting key 
44        n = insertSorted(arr, n, key, capacity); 
45       
46        System.out.print("\n After Insertion: "); 
47        for (i = 0; i < n; i++) 
48            System.out.print(arr[i]+" "); 
49    } 
50} 

درج در آرایه نامرتب در پایتون

1# Python program for inserting 
2# an element in an unsorted array 
3  
4# method to insert element 
5def insert(arr, element): 
6    arr.append(element) 
7  
8# declaring array and key to insert  
9arr = [12, 16, 20, 40, 50, 70] 
10key = 26
11   
12# array before inserting an element 
13print ("Before Inserting: ") 
14print (arr) 
15   
16# array after Inserting element  
17insert(arr, key) 
18print("After Inserting: ") 
19print (arr) 
20  
21# Thanks to Aditi Sharma for contributing  
22# this code

درج در آرایه نامرتب در #C

1// C# program to implement insert  
2// operation in an unsorted array. 
3using System; 
4  
5class main 
6{ 
7      
8    // Function to insert a given  
9    // key in the array. This  
10    // function  returns n + 1  
11    // if insertion is successful, 
12    // else n.  
13    static int insertSorted(int []arr, int n,  
14                            int key,  
15                            int capacity) 
16    { 
17          
18        // Cannot insert more elements 
19        // if n is already more than  
20        // or equal to capcity  
21        if (n >= capacity) 
22        return n; 
23      
24        arr[n] = key; 
25        return (n + 1); 
26    } 
27      
28    // Driver Code 
29    public static void Main () 
30    {  
31        int[] arr = new int[20];  
32        arr[0] = 12; 
33        arr[1] = 16; 
34        arr[2] = 20; 
35        arr[3] = 40;  
36        arr[4] = 50; 
37        arr[5] = 70; 
38        int capacity = 20; 
39        int n = 6; 
40        int i, key = 26; 
41      
42        Console.Write("Before Insertion: "); 
43        for (i = 0; i < n; i++) 
44            Console.Write(arr[i]+" "); 
45            Console.WriteLine(); 
46      
47        // Inserting key 
48        n = insertSorted(arr, n, key, capacity); 
49      
50        Console.Write("After Insertion: "); 
51        for (i = 0; i < n; i++) 
52            Console.Write(arr[i]+" "); 
53              
54    } 
55} 
56  
57// This code is contributed by vt_m.

درج در آرایه نامرتب در PHP

بر اساس رای ۶ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
GeeksforGeeks
۱ دیدگاه برای «عملیات در آرایه: جستجو، درج و حذف — به زبان ساده»

بابا دمتون گرم چقد جامع بود

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *