introduction searching algorithms c
En oversikt over søking av algoritmer i C ++.
Vi fortsetter å lete etter noe eller det andre i hverdagen vår. Akkurat som hverdagen vår, som programvareprofessor, må vi søke etter informasjon på datamaskinen vår. Informasjonsinnhenting bør gjøres raskt, ettersom vi ikke har råd til å kaste bort mye av tiden vår på å søke etter informasjon.
Derfor trenger vi noen effektive søketeknikker eller algoritmer som kan søke i en gitt informasjon på kort tid og gi til brukeren slik at brukeren kan gå videre med de andre oppgavene.
=> Besøk her for den komplette C ++ opplæringslisten.
Hva du vil lære:
Søketeknikker
Vi har to søketeknikker som hovedsakelig brukes til å søke etter informasjon.
Disse inkluderer:
- Lineært søk
- Binært søk
I denne opplæringen vil vi utforske begge disse søketeknikkene i detalj.
Lineært søk
Dette er den mest grunnleggende søketeknikken og er lettere å implementere også. I et lineært søk sammenlignes nøkkelen som skal søkes lineært med hvert element i datainnsamlingen. Denne teknikken fungerer effektivt på lineære datastrukturer.
La oss se på følgende utvalg.
Ovenfor er en rekke syv elementer. Hvis vi vil søke nøkkel = 23, så start fra 0thelement vil nøkkelverdien bli sammenlignet med hvert element. Når nøkkelelementet samsvarer med elementet i matrisen, vil den aktuelle plasseringen bli returnert. I dette tilfellet returneres 4 da nøkkelverdien samsvarer med verdien på stedet.
Vi har implementert et lineært søk ved hjelp av C ++ og Java-språk nedenfor.
C ++ Implementering
#include #include using namespace std; int main() { int myarray(10) = {21,43,23,54,75,13,5,8,25,10}; int key,loc; cout<<'The input array is'<key; for (int i = 0; i<10; i++) { if(myarray(i) == key) { loc = i+1; break; } else loc = 0; } if(loc != 0) { cout<<'Key found at position '< Produksjon:
pl / sql utviklerintervju spørsmål
Inngangsoppsettet er
21 43 23 54 75 13 5 8 25 10
Skriv inn nøkkelen som skal søkes: 3
Fant ikke gitt nøkkel i matrisen
Inngangsoppsettet er
21 43 23 54 75 13 5 8 25 10
Skriv inn nøkkelen som skal søkes: 75
Nøkkel funnet på posisjon 5 i matrisen
Java-implementering
import java.util.*; import java.lang.*; import java.io.*; public class Main { public static void main(String() args) { int() myarray = {21,43,23,54,75,13,5,8,25,10}; int key,location=0; Scanner sc = new Scanner(System.in); System.out.println('The input array is'); for(int i=0;i<10;i++){ System.out.print(myarray(i)+' '); } System.out.println('
'); System.out.println('Enter key'); key = sc.nextInt(); for(int i = 0; i<10; i++) { if(myarray(i)==key) { location = i+1; break; } else location = 0; } if(location != 0) { System.out.println('key found at location ' + location); } else System.out.println('Key not found'); } }
Produksjon:
Inngangsoppsettet er
21 43 23 54 75 13 5 8 25 10
Enter-tast
2. 3
sql eksamensspørsmål og svar pdf
nøkkel funnet på sted 3
Lineært søk kan utføres på hvilken som helst lineær datastruktur som har sorterte eller usorterte elementer. Men det tar lengre tid hvis det er for mange elementer, og hvis nøkkelelementet er mot slutten ettersom hvert element sammenlignes med nøkkelverdien.
Binært søk
Binært søk er en teknikk som bruker “del og erobre” teknikk for å søke etter en nøkkel. Det fungerer på en sortert lineær liste over elementer. Den sorterte listen er det grunnleggende kravet for at et binært søk skal fungere.
I den binære søkemetoden blir listen flere ganger delt inn i halvparten og nøkkelelementet blir søkt i begge halvdelene av listen til nøkkelen er funnet.
For eksempel,la oss ta følgende sorterte utvalg med 10 elementer.

La oss si at nøkkelen = 21 skal søkes i matrisen.
La oss beregne den midtre plasseringen av matrisen.
Midt = 0 + 9/2 = 4
For eksempel,la oss ta følgende sorterte utvalg med 10 elementer.

Nøkkel = 21
Først vil vi sammenligne nøkkelverdien med (mid) -elementet. Vi finner ut at elementverdien midt = 21.

Dermed finner vi den nøkkelen = (midt). Derfor er nøkkelen funnet.
nøkkel = 25

Vi sammenligner først nøkkelverdien med midten. Så (21<25), we will directly search for the key in the upper half of the array.

Nå vil vi igjen finne midten for den øvre halvdelen av matrisen.
Midt = 4 + 9/2 = 6
Verdien på stedet (midt) = 25

Nå sammenligner vi nøkkelelementet med midtelementet. Så (25 == 25), altså har vi funnet nøkkelen på plassering (midt).
Vi deler rekkefølgen gjentatte ganger, og ved å sammenligne nøkkelelementet med midten bestemmer vi i hvilken halvdel vi skal søke etter nøkkelen.
Nedenfor er C ++ og Java-implementeringen for binært søk.
C ++ Implementering
#include #include using namespace std; int binarySearch(int myarray(), int beg, int end, int key) { int mid; if(end >= beg) { mid = (beg + end)/2; if(myarray(mid) == key) { return mid+1; } else if(myarray(mid) key; location = binarySearch(myarray, 0, 9, key); if(location != -1) { cout<<'Key found at location '< Produksjon:
Inngangsoppsettet er
5 8 10 13 21 23 25 43 54 75
Tast inn nøkkelen som skal søkes: 21
Nøkkel funnet på sted 5

gratis anime streaming nettsteder engelsk kalt
Java-implementering
import java.util.*; import java.lang.*; import java.io.*; class Main { public static void main(String() args) { int() myarray = {5,8,10,13,21,23,25,43,54,75}; int key, location = -1; System.out.println('The input array is'); for(int i=0;i= beg) { mid = (beg + end)/2; if(myarray(mid) == key) { return mid+1; } else if(myarray(mid) Produksjon:
Inngangsoppsettet er
5 8 10 13 21 23 25 43 54 75
Skriv inn nøkkelen du vil søke etter
tjueen
plasseringen av nøkkelen er 5
Binært søk er mer effektivt når det gjelder tid og korrekthet. Lineær søketeknikk brukes sjelden ettersom den er mer tungvint og tregere. Binært søk er mye raskere sammenlignet med et lineært søk.
Konklusjon
Søketeknikkene hjelper oss med å søke etter informasjon som er lagret på en datamaskin, slik at brukeren kan fortsette med de andre oppgavene for informasjonsbehandling. Lineær søketeknikk er enkel og enklere, men brukes ikke mye.
Binær søketeknikk er mye raskere og effektiv og brukes derfor mye.
I vår kommende opplæring vil vi utforske de forskjellige sorteringsteknikkene i detalj.
=> Sjekk ut den perfekte C ++ treningsguiden her.
Anbefalt lesing
- Introduksjon til Java Programming Language - Video Tutorial
- Introduksjon til Appium Studio: Viktige fordeler og funksjoner
- Algoritmer i STL
- Beste GRATIS C # opplæringsserie: The Ultimate C # Guide For Beginners
- JMeter Video 1: Introduksjon, JMeter Last ned og installer
- Python Introduksjon og installasjonsprosess
- Hva er Unix: En kort introduksjon til Unix
- Introduksjon til Micro Focus LoadRunner - Load Testing with LoadRunner Tutorial # 1