Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

เทคนิคการค้นหาในภาษา C ต่างกันอย่างไร?


เทคนิคการค้นหาหมายถึงการค้นหาองค์ประกอบหลักในรายการองค์ประกอบ

  • หากองค์ประกอบที่ระบุมีอยู่ในรายการ แสดงว่ากระบวนการค้นหาสำเร็จ

  • หากองค์ประกอบที่ระบุไม่อยู่ในรายการ แสดงว่ากระบวนการค้นหาไม่สำเร็จ

ภาษาซีมีเทคนิคการค้นหาสองประเภท ดังต่อไปนี้ −

  • การค้นหาเชิงเส้น
  • ค้นหาไบนารี

การค้นหาเชิงเส้น

  • การค้นหาองค์ประกอบหลักจะดำเนินการในลักษณะเชิงเส้น
  • เป็นเทคนิคการค้นหาที่ง่ายที่สุด
  • ไม่ได้คาดหวังให้มีการจัดเรียงรายการ
  • ข้อจำกัด − กินเวลามากขึ้นและลดพลังของระบบ

อินพุต (i/p)

รายการองค์ประกอบที่ไม่ได้เรียงลำดับ คีย์

เอาต์พุต (o/p)

  • ความสำเร็จ - หากพบคีย์
  • ไม่สำเร็จ − มิฉะนั้น

เทคนิคการค้นหาในภาษา C ต่างกันอย่างไร?

ตัวอย่าง

ต่อไปนี้เป็นโปรแกรม C สำหรับเทคนิคการค้นหาเชิงเส้น -

#include<stdio.h>
int main (){
   int a[50], n, i, key, flag = 0;
   printf("enter the no: of elements");
   scanf ("%d",&n);
   printf("enter the elements:\n");
   for (i=0; i<n; i++)
      scanf( "%d", &a[i]);
   printf("enter a key element:\n");
   scanf ("%d", &key);
   for (i=0; i<n; i++){
      if (a[i] == key){
         flag = 1;
         break;
      }
   }
   if (flag == 1)
      printf("search is successful:");
   else
      printf("search is unsuccessfull:");
   return 0;
}

ผลลัพธ์

เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −

enter the no: of elements5
enter the elements:12
45
13
67
78
enter a key element:67
search is successful: