Grunnleggende Algoritmer i datastrukturer

Grunnleggende Algoritmer i datastrukturer


I informatikk, algoritmer stole på datastrukturer for å utføre sine oppgaver effektivt. Når en datastruktur har blitt satt på plass, kan algoritmer bli utviklet, testet og kjøre. Datastrukturer og algoritmer brukes i omtrent alle dataprogram tilgjengelig i dag.

Om datastrukturer

I informatikk, er en datastruktur en måte å organisere og lagring av data; datastrukturer søker å maksimere effektiviteten av lagring og gjenfinning av data i en datamaskin. Ulike typer datastrukturer er egnet for ulike arbeidsoppgaver - for eksempel, er B-trær ofte brukt for å administrere databaser, mens nøkkeltabeller benyttes for kompilatorer. Utforming og gjennomføring av en effektiv datastruktur er viktig for utforming av effektive algoritmer for et dataprogram.

om Algoritmer

I informatikk, er en algoritme et sett med entydige instruksjoner som brukes for å få en bestemt utgang for noen legitim - det vil si, anerkjent - inngang. Algoritmer er avhengige av datastrukturer for å være vellykket - det må være en datastruktur på plass før algoritmer kan utvikles og testes. Dette er hvorfor noen programmerere mener at hemmeligheten til å utvikle god programvare ligger i utforming og bruk av effektive datastrukturer snarere enn smarte algoritmer.

Brute Force Algoritmer

"Brute force" typer er noen av de mest grunnleggende og direkte algoritmer. Som navnet tilsier, brute force algoritmer krever uttalelsen av problemet som skal løses, samt eksplisitte definisjoner av de ulike komponentene, for å fungere korrekt. I dataprogrammering, er brute force algoritmer som brukes til å beregne fakultetene, potenser, å multiplisere matriser eller for å søke etter en verdi nøkkel i en spesifisert liste.

Divide (eller nedgang) og Conquer Algoritmer

Splitt og hersk er noen av de mest kjente algoritmer, og de er vanligvis brukes til å konstruere rekursive algoritmer - en slags positiv feedback loop. Tro mot sitt navn, splitt og hersk-algoritmer dele et problem i to mindre problemer som hvert lettere å håndtere og løse separat; de separate oppløsninger blir deretter kombinert for å løse det opprinnelige problem. I nedgang og hersk-algoritmer, er det opprinnelige problemet skalert ned til en størrelse som algoritmen kan administrere. Når løsningen er funnet, blir det skalert opp for å løse det opprinnelige problem. Redusere og erobre algoritmer er også kjent som induktive eller inkrementelle algoritmer.

Transform og Conquer Algoritmer

Transform og erobre algoritmer løse problemer i programmering på en av tre måter, som alle involverer transforme - eller oversette - problemet til noe mer håndterlig. En transformere og hersk algoritme kan forvandle problemet til en enklere eksempel på det samme problemet i en prosess som kalles "forekomst forenkling." De kan også transformere problemet til en ny fremstilling av problemet, som kalles "representasjon forandring". Til slutt, forvandle og erobre algoritmer kan også oversette problemet til et annet problem som er lettere å løse; denne siste metoden kalles "problem reduksjon".