Algorismes de cerca són eines essencials en informàtica que s'utilitzen per localitzar elements específics dins d'una col·lecció de dades. Aquests algorismes estan dissenyats per navegar de manera eficient a través de les estructures de dades per trobar la informació desitjada, fent-los fonamentals en diverses aplicacions com ara bases de dades, cercadors web , i més.

Algorisme de cerca
Taula de contingut
guineu o llop
- Què és la recerca?
- Recerca de terminologies
- Importància de cercar a DSA
- Aplicacions de cerca
- Conceptes bàsics d'algorismes de cerca
- Algorismes de cerca
- Comparacions entre diferents algorismes de cerca
- Implementacions biblioteques d'algorismes de cerca
- Problemes fàcils de cercar
- Problemes mitjans en la recerca
- Problemes difícils a la recerca
Què és la recerca?
La cerca és el procés fonamental de localitzar un element o element específic dins d'una col·lecció de dades . Aquesta recopilació de dades pot prendre diverses formes, com ara matrius, llistes, arbres o altres representacions estructurades. L'objectiu principal de la cerca és determinar si l'element desitjat existeix dins de les dades i, si és així, identificar-ne la ubicació precisa o recuperar-lo. Té un paper important en diverses tasques computacionals i aplicacions del món real, com ara la recuperació d'informació, l'anàlisi de dades, els processos de presa de decisions i molt més.
Cerca de terminologies:
Element objectiu:
En la cerca, sempre hi ha un element o element objectiu específic que voleu trobar dins de la recollida de dades. Aquest objectiu pot ser un valor, un registre, una clau o qualsevol altra entitat de dades d'interès.
dormir en js
Espai de cerca:
L'espai de cerca fa referència a tota la col·lecció de dades dins de la qual esteu buscant l'element objectiu. Depenent de l'estructura de dades utilitzada, l'espai de cerca pot variar en mida i organització.
Complexitat:
La cerca pot tenir diferents nivells de complexitat segons l'estructura de dades i l'algorisme utilitzat. La complexitat sovint es mesura en termes de requisits de temps i espai.
Determinista vs. no determinista:
Alguns algorismes de cerca, com ara cerca binària , són deterministes, és a dir, segueixen un enfocament clar i sistemàtic. D'altres, com la cerca lineal, no són deterministes, ja que poden necessitar examinar tot l'espai de cerca en el pitjor dels casos.
punt de primavera
Importància de cercar a DSA:
- Eficiència: Els algorismes de cerca eficients milloren el rendiment del programa.
- Recuperació de dades: Cerca i recupera ràpidament dades específiques de grans conjunts de dades.
- Sistemes de bases de dades: Permet consultar ràpidament les bases de dades.
- Solucionar problemes: S'utilitza en una àmplia gamma de tasques de resolució de problemes.
Aplicacions de cerca:
Els algorismes de cerca tenen nombroses aplicacions en diversos camps. Aquí hi ha algunes aplicacions habituals:
- Recuperació d'informació: Els motors de cerca com Google, Bing i Yahoo utilitzen algorismes de cerca sofisticats per recuperar informació rellevant de grans quantitats de dades al web.
- Sistemes de bases de dades: La cerca és fonamental en els sistemes de bases de dades per recuperar registres de dades específics basats en les consultes dels usuaris, millorant l'eficiència en la recuperació de dades.
- Comerç electrònic: La cerca és crucial a les plataformes de comerç electrònic perquè els usuaris trobin productes ràpidament en funció de les seves preferències, especificacions o paraules clau.
- Xarxa: En xarxes, s'utilitzen algorismes de cerca per encaminar paquets de manera eficient a través de xarxes, trobar camins òptims i gestionar recursos de xarxa.
- Intel · ligència artificial: Els algorismes de cerca tenen un paper vital en les aplicacions d'IA, com ara la resolució de problemes, el joc (per exemple, els escacs) i els processos de presa de decisions.
- Reconeixement de patró: Els algorismes de cerca s'utilitzen en tasques de concordança de patrons, com ara el reconeixement d'imatges, el reconeixement de veu i el reconeixement d'escriptura a mà.
Conceptes bàsics d'algorismes de cerca:
- Introducció a la cerca - Tutorial d'estructura de dades i algorisme
- Importància de la cerca a l'estructura de dades
- Quin és l'objectiu de l'algorisme de cerca?
Algorismes de cerca:
- Cerca lineal
- Cerca lineal Sentinel
- Cerca binària
- Cerca meta binària | Cerca binària unilateral
- Cerca ternaria
- Salt de cerca
- Cerca per interpolació
- Cerca exponencial
- Cerca de Fibonacci
- La cerca binària omnipresent
Comparacions entre diferents algorismes de cerca:
- Cerca lineal vs cerca binària
- Cerca per interpolació vs cerca binària
- Per què es prefereix la cerca binària a la cerca ternària?
- La cerca lineal Sentinel és millor que la cerca lineal normal?
Implementacions de biblioteques d'algorismes de cerca:
- Funcions de cerca binària en C++ STL (binary_search, lower_bound i upper_bound)
- Arrays.binarySearch() a Java amb exemples | Set 1
- Arrays.binarySearch() a Java amb exemples | Set 2 (Cerca al subbarray)
- Collections.binarySearch() a Java amb exemples
Problemes fàcils de cercar:
- Troba els tres elements més grans d'una matriu
- Troba el número que falta
- Trobeu el primer element que es repeteix en una matriu de nombres enters
- Busca el nombre que falta i que es repeteix
- Cerca, inseriu i suprimeix en una matriu ordenada
- Compteu 1 en una matriu binària ordenada
- Dos elements la suma dels quals és més propera a zero
- Trobeu una parella amb la diferència donada
- k elements més grans (o més petits) d'una matriu
- Kè element més petit d'una matriu 2D ordenada per files i columnes
- Troba elements comuns en tres matrius ordenades
- Sostre en una matriu ordenada
- Pis en una matriu ordenada
- Trobeu l'element màxim d'una matriu que primer augmenta i després disminueix
- Donada una matriu de mida n i un nombre k, troba tots els elements que apareixen més de n/k vegades
Problemes mitjans en la cerca:
- Troba tots els triplets amb suma zero
- Troba l'element abans del qual tots els elements són més petits que ell i després del qual tots són més grans
- Trobeu la suma de parelles més gran en una matriu no ordenada
- K'th element més petit/més gran de la matriu no ordenada
- Cerca un element en una matriu ordenada i girada
- Trobeu l'element mínim en una matriu ordenada i girada
- Trobeu un element màxim
- Màxim i mínim d'una matriu utilitzant el nombre mínim de comparacions
- Trobeu un punt fix en una matriu donada
- Troba les k paraules més freqüents d'un fitxer
- Trobeu els k elements més propers a un valor donat
- Donada una matriu ordenada i un nombre x, trobeu la parella de la matriu la suma del qual és més propera a x
- Trobeu la parella més propera entre dues matrius ordenades
- Trobeu els tres elements més propers a partir de tres matrius ordenades donades
- Cerca binària de nombres racionals sense utilitzar l'aritmètica de coma flotant
Problemes difícils de cercar:
- Mediana de dues matrius ordenades
- Mediana de dues matrius ordenades de diferents mides
- Cerca en una matriu gairebé ordenada
- Troba la posició d'un element en una matriu ordenada de nombres infinits
- Donada una matriu ordenada i rotada, cerqueu si hi ha una parella amb una suma determinada
- K’th element més petit/més gran de la matriu no ordenada | Temps lineal en el pitjor dels casos
- K’è element més gran d’un corrent
- Millor primera cerca (cerca informada)
Links ràpids:
- 'Problemes de pràctica' en la cerca
- 'Quizzes' sobre cerca
Recomanat:
- Apreneu l'estructura de dades i els algorismes | Tutorial DSA