Ya conoce varias estructuras de datos y es posible que no se dé cuenta.
Cuando aprende lenguajes de programación, a veces es útil pensar en elementos del mundo real que son similares a las “cosas” conceptuales dentro de un programa.
Una radio reloj es una cosa común que se encuentra en muchos lugares que es electrónica y comparte muchos rasgos comunes con las clases de programación orientada a objetos. En su interior tiene varias estructuras de datos.
- Cómo averiguar la complejidad temporal de un algoritmo dado
- Como desarrollador web full stack con 1 año de experiencia, ¿sería beneficioso para mí aprender algoritmo y estructura de datos?
- ¿Por qué los desarrolladores front-end necesitan conocer estructuras de datos y algoritmos?
- Tengo la cadena de entrada, también tengo la cadena encriptada. ¿Cómo averiguo qué algoritmo de cifrado se utilizó?
- ¿Cuál sería la mejor manera de integrar el algoritmo de aprendizaje para clasificar en Solr?
Si pensamos en una radio reloj, tiene dos propósitos: un reloj con alarma y un receptor de radio. Centrémonos primero en el reloj.
Los relojes digitales tienen un contador de milisegundos dentro, pero solo muestran horas, minutos y, a veces, indicadores de am / pm.
La estructura de datos que describiría todas las variables incluidas en el estado actual de esta radio, es decir, su situación en un instante , podría describirse de la siguiente manera:
enumeración ReceiverSwitchModes {
AM = 0, FM = 1
};
clase ClockRadio {
int horas, minutos, segundos, milisegundos;
bool pm;
ajuste de flotación, volumen;
ReceiverSwitchModes receptorMode;
};
Para establecer nuestro ClockRadio conceptual igual al que se muestra:
ClockRadio inpic;
inpic.tuning = 0.33; // 33% del camino desde la izquierda
inpic.pm = falso; // porque “am” está encendido
inpic.volume = 1.0; // 100%, o “hasta arriba”, una suposición 😀
inpic.receiverMode = FM;
inpic.hours = 2;
inpic.minutes = 32;
inpic.seconds = 11; // inventado, porque no puedo decir
inpic.milliseconds = 423; // inventado, porque no puedo decir
Si puede comprender lo que está sucediendo aquí, que hemos creado una radio reloj conceptual y hemos establecido sus valores iguales a la radio reloj real, ha sido testigo de su primera estructura de datos, ha experimentado un poquito del mundo de la programación orientada a objetos, y tener una breve exposición a las máquinas de estado , un concepto fundamental en informática.
Las estructuras de datos son los “cubículos” de la memoria y cómo se interrelacionan estos cubículos, y eso los hace importantes para aprender la habilidad de la programación de computadoras. Otros obstáculos a superar son la sintaxis, las abstracciones y, finalmente, la aplicación de otras ideas, campos y ciencias a sus programas. La informática y, por lo tanto, la programación informática, es un campo con el que interactúan otros campos: se aplican teorías e ideas de otros campos a las computadoras a través del trabajo del programador informático.