Diferència entre la cerca lineal i la cerca binària
Content
La recerca lineal i la cerca binària són els dos mètodes que s'utilitzen en matrius de cercant els elements. La cerca és un procés de cerca d’un element dins de la llista d’elements emmagatzemats en qualsevol ordre o aleatòriament.
La diferència principal entre la cerca lineal i la cerca binària és que la cerca binària requereix menys temps per cercar un element de la llista d’elements ordenada. Per tant, es dedueix que l’eficiència del mètode de cerca binària és més gran que la cerca lineal.
Una altra diferència entre ambdues és que hi ha un requisit previ per a la cerca binària, és a dir, els elements han de ser ordenats mentre que a la cerca lineal no hi ha cap requisit previ. Tot i que els dos mètodes de cerca utilitzen tècniques diferents que es tracten a continuació.
- Gràfic de comparació
- Definició
- Diferències claus
- Conclusió
Gràfic de comparació
Bases per a la comparació | Recerca lineal | Recerca binària |
---|---|---|
Complexitat horària | O (N) | O (registre 2 N) |
Millor cas | Primer Element O (1) | Element central O (1) |
Prerequisit per a una matriu | No és necessari | La matriu ha d’estar ordenada |
Pitjor cas per N nombre d’elements | N calen comparacions | Es pot concloure després del registre2 N comparacions |
Es pot implementar el | Llista Matriu i enllaç | No es pot implementar directament a la llista enllaçada |
Operació d'inserció | S'insereix fàcilment al final de la llista | Cal que el processament s'insereixi al lloc adequat per mantenir una llista ordenada. |
Tipus d'algoritme | Iteratiu de naturalesa | Divideix i conquereix en la natura |
Utilitat | Fàcil d'utilitzar i no necessita cap element ordenat. | Alguns algoritmes i elements complicats haurien d’estar organitzats en ordre. |
Línies de codi | Menys | Més |
Definició de Lineal Search
En una cerca lineal, cada element d'una matriu es recupera un per un en un ordre lògic i es comprova si és l'element desitjat o no. Si no s’accedeix a tots els elements i no es troba l’element desitjat, una cerca no reeixirà. En el pitjor dels casos, és possible que hàgim d’escanejar la meitat de la mida de la matriu (n / 2).
Per tant, la cerca lineal es pot definir com la tècnica que recorre la matriu de forma seqüencial per localitzar l'element donat. El programa que es mostra a continuació il·lustra la cerca d’un element de la matriu mitjançant la cerca.
Eficiència de cerca lineal
L’eficiència de la tècnica determina el consum de temps o el nombre de comparacions realitzades per cercar un registre en una taula de cerca. Si el registre desitjat es troba a la primera posició de la taula de cerca, només es farà una comparació. Quan el registre desitjat és l’últim, caldrà fer n comparacions. Si el registre es presenta en algun lloc de la taula de cerca, de mitjana, el nombre de comparacions serà (n + 1/2). La pitjor eficiència dels casos d'aquesta tècnica és que O (n) significa l'ordre d'execució.
Programa C per cercar un element amb tècnica de cerca lineal.
#incloure La cerca binària és un algoritme extremadament eficient. Aquesta tècnica de cerca consumeix menys temps per cercar l’element donat en mínimes comparacions possibles. Per fer la cerca binària, primer hem d’ordenar els elements de la matriu. A continuació, es mostra la lògica d'aquesta tècnica: Hi poden haver tres casos: Repetiu els mateixos passos fins que un element no es trobi o s’esgoti a l’àrea de cerca. En aquest algorisme, cada àrea de cerca es redueix. Per tant, el nombre de comparacions és, com a màxim, log (N + 1). Com a resultat, és un algorisme eficient en comparació amb la cerca lineal, però la matriu s'ha d'ordenar abans de fer la cerca binària. Programa C per trobar un element amb tècnica de cerca binària. #incloure Tant els algorismes de cerca lineals com binaris poden ser útils depenent de l'aplicació. Quan una matriu és l'estructura de dades i els elements estan ordenats en ordre ordenat, es preferirà la cerca binària ràpidcercant. Si la llista enllaçada és l’estructura de dades independentment de com s’organitzin els elements, s’adopta la cerca lineal a causa de la indisponibilitat d’implementació directa de l’algorisme de cerca binària. El típic algorisme de cerca binària no es pot utilitzar per a la llista enllaçada, perquè la llista enllaçada és de naturalesa dinàmica i no se sap on s'assigna realment l'element mig. Per tant, hi ha un requisit de dissenyar la variació de l'algorisme de cerca binària que pot funcionar també a la llista enllaçada, ja que la cerca binària té una execució més ràpida que una cerca lineal.Definició de cerca binària
Conclusió