ಅಲ್ಗಾರಿದಮ್ ಎಂದರೇನು?

ಕ್ರಮಾವಳಿಗಳು ಪ್ರಪಂಚವನ್ನು ಹೇಗೆ ರನ್ ಮಾಡುತ್ತವೆ ಎಂಬುದನ್ನು ಅನ್ವೇಷಿಸಿ

ಒಂದು ಅಲ್ಗಾರಿದಮ್ ಸೂಚನೆಗಳ ಗುಂಪಾಗಿದೆ. ವ್ಯಾಖ್ಯಾನ ನಿಜವಾಗಿಯೂ ಸರಳವಾಗಿದೆ. ಈ ರೀತಿಯ ಸೂಚನೆಗಳನ್ನು ನೀಡುವಂತೆ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಸುಲಭವಾಗಿ ಮಾಡಬಹುದು:

  1. ರಸ್ತೆ ಕೆಳಗೆ ಹೋಗಿ
  2. ಮೊದಲ ಬಲ ತೆಗೆದುಕೊಳ್ಳಿ
  3. ಎಡಭಾಗದಲ್ಲಿ ಎರಡನೇ ಮನೆ ಹುಡುಕಿ
  4. ಬಾಗಿಲನ್ನು ನಾಕ್ ಮಾಡಿ
  5. ಪ್ಯಾಕೇಜ್ ಅನ್ನು ತಲುಪಿಸಿ.

ಆದರೆ ಅಲ್ಗಾರಿದಮ್ನ ವ್ಯಾಖ್ಯಾನವು ಸರಳವಾಗಿದ್ದರೂ, ನಿಜವಾದ ಅರ್ಥ ಮತ್ತು ಅದು ನಮ್ಮ ಜೀವನವನ್ನು ಹೇಗೆ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ ಎನ್ನುವುದು ತುಂಬಾ ಸಂಕೀರ್ಣವಾಗಿರುತ್ತದೆ.

ಒಂದು ಕ್ರಮಾವಳಿ ಒಂದು ಉದಾಹರಣೆ

ನಮ್ಮ ದೈನಂದಿನ ಜೀವನದಲ್ಲಿ ನಾವು ಬಳಸುವ ಅಲ್ಗಾರಿದಮ್ಗೆ ಒಂದು ಸಾಮಾನ್ಯ ಉದಾಹರಣೆಯೆಂದರೆ ಒಂದು ಪಾಕವಿಧಾನ. ಸೂಚನೆಗಳ ಈ ಸೆಟ್ ನಮಗೆ ಅಗತ್ಯವಿರುವ ಎಲ್ಲಾ ಪದಾರ್ಥಗಳನ್ನು ಮತ್ತು ಆ ಪದಾರ್ಥಗಳೊಂದಿಗೆ ಏನು ಮಾಡಬೇಕೆಂದು ನಿರ್ದೇಶನಗಳನ್ನು ನೀಡುತ್ತದೆ. ಸುಲಭವಾಗಿ ಧ್ವನಿಸುತ್ತದೆ, ಸರಿ?

ಅಳತೆ ಕಪ್ ಎಲ್ಲಿದೆ ಎಂದು ನಿಮಗೆ ಗೊತ್ತಿಲ್ಲದಿದ್ದರೆ ಏನು? ಅದನ್ನು ಕಂಡುಹಿಡಿಯಲು ನಿಮಗೆ ಒಂದು ಅಲ್ಗಾರಿದಮ್ ಅಗತ್ಯವಿರುತ್ತದೆ. ಅಳತೆ ಮಾಡುವ ಕಪ್ ಅನ್ನು ಹೇಗೆ ಬಳಸಬೇಕೆಂಬುದರ ಬಗ್ಗೆ ನಿಮಗೆ ಒಂದು ಅಲ್ಗಾರಿದಮ್ ಕೂಡ ಬೇಕಾಗಬಹುದು.

ಅಲ್ಗಾರಿದಮ್ ಸೂಚನೆಗಳ ಗುಂಪಾಗಿದ್ದರೂ ಸಹ, ಆ ಸೂಚನೆಗಳನ್ನು ಯಾರು ಅಥವಾ ಯಾವ ಅರ್ಥವನ್ನು ಅರ್ಥೈಸಿಕೊಳ್ಳುತ್ತಿದ್ದಾರೆ ಎಂಬುದನ್ನು ಗಣನೆಗೆ ತೆಗೆದುಕೊಳ್ಳಬೇಕಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ನಿಮ್ಮ ಮನೆಯಿಂದ ಹತ್ತಿರದ ಕಿರಾಣಿ ಅಂಗಡಿಗೆ ಹೇಗೆ ಹೋಗಬೇಕೆಂದು ವಿವರಿಸುವ ಸ್ನೇಹಿತನಿಗೆ ನಿರ್ದೇಶನಗಳನ್ನು ನೀಡುವಾಗ, ನಿಮ್ಮ ಮನೆ ಎಲ್ಲಿದೆ ಎಂದು ತಿಳಿದಿದ್ದರೆ ನಿಮ್ಮ ಸ್ನೇಹಿತರಿಗೆ ಮಾತ್ರ ಆ ಅಂಗಡಿಗೆ ಹೇಗೆ ಹೋಗುವುದು ಎಂದು ತಿಳಿಯುತ್ತದೆ. ಅಂತಹ ವಿಶೇಷ ಕಿರಾಣಿ ಅಂಗಡಿಯನ್ನು ಇನ್ನೊಬ್ಬ ಸ್ನೇಹಿತನ ಮನೆಯಿಂದ ಹೇಳಲು ಅವರು ಇನ್ನೂ (ಇನ್ನೂ) ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿಲ್ಲ.

ಇದರಿಂದಾಗಿ ಅಲ್ಗಾರಿದಮ್ ಸರಳ ಮತ್ತು ಸಂಕೀರ್ಣವಾಗಿರುತ್ತದೆ. ಮತ್ತು ನಾವು ಗಣಕ ಕ್ರಮಾವಳಿಗಳ ವಿಷಯದಲ್ಲಿ ಮಾತನಾಡುವಾಗ, ಗಣಕಯಂತ್ರವು ಮಾಡುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಕ್ರಮಾವಳಿಗಳನ್ನು ರಚಿಸುವ ಮೂಲಭೂತ ಭಾಗವಾಗಿದೆ.

ಆಲ್ಗರಿದಮ್ಗಳನ್ನು ಹೇಗೆ ವಿಂಗಡಿಸಲಾಗಿದೆ

ರಚಿಸಿದ ಆರಂಭಿಕ ಅಲ್ಗಾರಿದಮ್ಗಳಲ್ಲಿ ಒಂದು ಗುಳ್ಳೆ ರೀತಿಯ ನಿಯತಕ್ರಮವಾಗಿದೆ. ಬಬಲ್ ವಿಂಗಡಣೆಯು ಅಕ್ಷಾಂಶ, ಅಕ್ಷರಗಳು ಅಥವಾ ಪದಗಳನ್ನು ವಿಂಗಡಿಸುವ ಒಂದು ವಿಧಾನವಾಗಿದ್ದು, ಪ್ರತಿಯೊಂದು ಸೆಟ್ ಮೌಲ್ಯಗಳನ್ನು ಪಕ್ಕ-ಪಕ್ಕಕ್ಕೆ ಹೋಲಿಸಿ, ಮತ್ತು ಅಗತ್ಯವಿದ್ದಾಗ ಅವುಗಳನ್ನು ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳುತ್ತದೆ.

ಕ್ರಮಾವಳಿಗಳು ಯಾವುದಾದರೂ ಸ್ವ್ಯಾಪ್ ಮಾಡದೆಯೇ ಇಡೀ ಪಟ್ಟಿಯ ಮೂಲಕ ಚಲಿಸುವವರೆಗೂ ಈ ಲೂಪ್ ಪುನರಾವರ್ತನೆಯಾಗುತ್ತದೆ, ಅಂದರೆ ಮೌಲ್ಯಗಳನ್ನು ಸರಿಯಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ. ಈ ಪ್ರಕಾರದ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಪುನರಾವರ್ತಿತ ಅಲ್ಗಾರಿದಮ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ ಏಕೆಂದರೆ ಅದು ಕಾರ್ಯವನ್ನು ಮುಗಿಸುವ ತನಕ ಅದರ ಮೇಲೆ ಮತ್ತು ಅದರ ಮೇಲೆ ಸುತ್ತುತ್ತದೆ.

ಅಲ್ಗಾರಿದಮ್ ಸರಳವಾಗಿ ಕಾಣುತ್ತದೆ:

  1. ಮೊದಲ ಮೌಲ್ಯಕ್ಕೆ ಹೋಗಿ.
  2. ಅಗತ್ಯವಿದ್ದರೆ ಮುಂದಿನ ಮೌಲ್ಯ ಮತ್ತು ಸ್ವಾಪ್ ಸ್ಥಾನಗಳ ವಿರುದ್ಧ ಮೌಲ್ಯವನ್ನು ಪರಿಶೀಲಿಸಿ
  3. ಮುಂದಿನ ಮೌಲ್ಯಕ್ಕೆ ಹೋಗು ಮತ್ತು ಹೋಲಿಕೆ ಪುನರಾವರ್ತಿಸಿ.
  4. ನಾವು ಪಟ್ಟಿಯ ಅಂತ್ಯದಲ್ಲಿದ್ದರೆ, ಲೂಪ್ ಸಮಯದಲ್ಲಿ ಯಾವುದಾದರೂ ಮೌಲ್ಯವನ್ನು ಬದಲಾಯಿಸಿದ್ದರೆ ಮೇಲಕ್ಕೆ ಹಿಂತಿರುಗಿ.

ಆದರೆ ಬಬಲ್ ವಿಂಗಡಣೆಯು ಮೌಲ್ಯಗಳನ್ನು ವಿಂಗಡಿಸುವ ಅತ್ಯಂತ ಪರಿಣಾಮಕಾರಿ ಮಾರ್ಗವಾಗಿ ಹೊರಹೊಮ್ಮಲಿಲ್ಲ. ಸಮಯ ಮುಗಿದ ಮತ್ತು ಕಂಪ್ಯೂಟರ್ಗಳು ಶೀಘ್ರವಾಗಿ ಸಂಕೀರ್ಣ ಕಾರ್ಯಗಳನ್ನು ಮಾಡುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿದ್ದವು, ಹೊಸ ವಿಂಗಡಣೆಯ ಕ್ರಮಾವಳಿಗಳು ಹುಟ್ಟಿಕೊಂಡವು.

ಅಂತಹ ಒಂದು ಅಲ್ಗಾರಿದಮ್ ಮೊದಲ ಪಟ್ಟಿಯ ಮೂಲಕ ಸ್ಕ್ಯಾನ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ವಿಂಗಡಿಸಲಾದ ಮೌಲ್ಯಗಳ ಎರಡನೇ ಪಟ್ಟಿಯನ್ನು ರಚಿಸುತ್ತದೆ. ಈ ವಿಧಾನವು ಮೂಲ ಪಟ್ಟಿಯ ಮೂಲಕ ಏಕೈಕ ಹಾದಿಯನ್ನು ಮಾತ್ರ ಮಾಡುತ್ತದೆ, ಮತ್ತು ಪ್ರತಿ ಮೌಲ್ಯದೊಂದಿಗೆ, ಮೌಲ್ಯವನ್ನು ಹಾಕಲು ಸರಿಯಾದ ಸ್ಥಳವನ್ನು ಕಂಡುಕೊಳ್ಳುವವರೆಗೂ ಇದು ಎರಡನೆಯ ಪಟ್ಟಿಯ ಮೂಲಕ ಲೂಪ್ ಮಾಡುತ್ತದೆ. ಸಾಮಾನ್ಯವಾಗಿ, ಇದು ಗುಳ್ಳೆ ರೀತಿಯ ವಿಧಾನವನ್ನು ಬಳಸುವುದಕ್ಕಿಂತ ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ.

ಇಲ್ಲಿ ಕ್ರಮಾವಳಿಗಳು ನಿಜವಾಗಿಯೂ ಅಸಾಮಾನ್ಯವಾಗಿರುತ್ತವೆ. ಅಥವಾ ನಿಜವಾಗಿಯೂ ಆಸಕ್ತಿದಾಯಕ, ನೀವು ಅದನ್ನು ಹೇಗೆ ನೋಡುತ್ತೀರಿ ಎಂಬುದರ ಮೇಲೆ ಅವಲಂಬಿಸಿ.

ಬಬಲ್ ವಿಂಗಡಣಾ ವಿಧಾನವನ್ನು ಅನೇಕ ವಿಧಗಳಲ್ಲಿ ಮೌಲ್ಯಗಳನ್ನು ವಿಂಗಡಿಸುವ ಅತ್ಯಂತ ಅಸಮರ್ಥ ವಿಧಾನಗಳಲ್ಲಿ ಒಂದಾಗಿದೆಯಾದರೂ, ಮೂಲ ಪಟ್ಟಿಯನ್ನು ಸರಿಯಾಗಿ ಜೋಡಿಸಿದ್ದರೆ, ಬಬಲ್ ವಿಂಗಡಣೆಯು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿರುತ್ತದೆ. ಅದಕ್ಕಾಗಿಯೇ, ಆ ಸಂದರ್ಭದಲ್ಲಿ, ಬಬಲ್ ಕ್ರಮಾವಳಿ ಅಲ್ಗಾರಿದಮ್ ಪಟ್ಟಿಯನ್ನು ಒಂದೇ ಬಾರಿಗೆ ಹೋಗುತ್ತದೆ ಮತ್ತು ಅದನ್ನು ಸರಿಯಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ ಎಂದು ನಿರ್ಧರಿಸುತ್ತದೆ.

ದುರದೃಷ್ಟವಶಾತ್, ನಮ್ಮ ಪಟ್ಟಿಯನ್ನು ಮುದ್ರಿಸಲಾಗಿದೆಯೇ ಎಂದು ನಾವು ಯಾವಾಗಲೂ ತಿಳಿದಿಲ್ಲ, ಹಾಗಾಗಿ ನಾವು ಒಂದು ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಆರಿಸಬೇಕಾಗುತ್ತದೆ, ಅದು ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಪಟ್ಟಿಗಳಾದ್ಯಂತ ಸರಾಸರಿ ಬಳಸಲು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ.

ಬಬಲ್ ವಿಂಗಡನೆಯಿಂದ ನಾವು ಏನು ಕಲಿಯುತ್ತೇವೆ

ಎವ್ವೆರಿಡೇ ಲೈಫ್ನಲ್ಲಿ ಫೇಸ್ಬುಕ್ ಆಲ್ಗರಿದಮ್ಸ್ ಮತ್ತು ಇನ್ನಷ್ಟು

ಪ್ರತಿ ದಿನ ಮಾನವರಿಗೆ ಸಹಾಯ ಮಾಡಲು ಆಲ್ಗರಿದಮ್ಸ್ ಕೆಲಸ ಮಾಡುತ್ತಿದೆ. ನೀವು ವೆಬ್ ಅನ್ನು ಹುಡುಕಿದಾಗ, ಅಲ್ಗಾರಿದಮ್ ಅತ್ಯುತ್ತಮ ಹುಡುಕಾಟ ಫಲಿತಾಂಶಗಳನ್ನು ಹುಡುಕಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ. ದಿಕ್ಕುಗಳಿಗಾಗಿ ನಿಮ್ಮ ಸ್ಮಾರ್ಟ್ಫೋನ್ ಕೇಳಿ, ಮತ್ತು ಅಲ್ಗಾರಿದಮ್ ನಿಮಗೆ ಉತ್ತಮ ಮಾರ್ಗವನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ. ಮತ್ತು ನೀವು ಫೇಸ್ಬುಕ್ ಬ್ರೌಸ್ ಮಾಡುವಾಗ, ಅಲ್ಗಾರಿದಮ್ ನಮ್ಮ ಸ್ನೇಹಿತನ ಫೇಸ್ಬುಕ್ ಪೋಸ್ಟ್ಗಳಲ್ಲಿ ಯಾವುದು ನಮಗೆ ಮುಖ್ಯವಾದುದು ಎಂದು ನಿರ್ಧರಿಸುತ್ತದೆ. (ನಮ್ಮ ಸ್ನೇಹಿತರು ನಮ್ಮನ್ನು ಇಷ್ಟಪಡುತ್ತಿಲ್ಲವೆಂದು ನಾವು ಭಾವಿಸುತ್ತೇವೆ, ನಾವು ಫೇಸ್ಬುಕ್ ಇಷ್ಟಪಡುತ್ತೇವೆ ಎಂದು ನಾವು ಭಾವಿಸುತ್ತೇವೆ!)

ಆದರೆ ಕ್ರಮಾವಳಿಗಳನ್ನು ಯೋಚಿಸುವುದು ನಮ್ಮ ಕಂಪ್ಯೂಟರ್ ಜೀವನಕ್ಕಿಂತಲೂ ಹೆಚ್ಚು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಇದು ಉತ್ತಮ ಸ್ಯಾಂಡ್ವಿಚ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಸಹ ನಮಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ.

ನಾನು ಎರಡು ಸ್ಲೈಸ್ಗಳ ಬ್ರೆಡ್ನೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸಿ, ಒಂದು ಸ್ಲೈಸ್ ಮತ್ತು ಮೇಯನೇಸ್ನಲ್ಲಿ ಇನ್ನೊಂದು ಸ್ಲೈಸ್ನಲ್ಲಿ ಸಾಸಿವೆವನ್ನು ಹರಡುತ್ತೇನೆ. ನಾನು ಮೇಯನೇಸ್ನೊಂದಿಗೆ ಚೀಸ್ನ ಸ್ಲೈಸ್ ಅನ್ನು ಮೇಯನೇಸ್ನೊಂದಿಗೆ ಹಾಕಿ, ಅದರ ಮೇಲೆ ಕೆಲವು ಹ್ಯಾಮ್, ಕೆಲವು ಲೆಟಿಸ್, ಎರಡು ಟೊಮೆಟೋಗಳ ಚೂರುಗಳು ಮತ್ತು ನಂತರ ಅದರ ಮೇಲೆ ಸಾಸಿವೆನೊಂದಿಗೆ ಸ್ಲೈಸ್ ಮಾಡಿ. ಉತ್ತಮ ಸ್ಯಾಂಡ್ವಿಚ್, ಸರಿ?

ನಾನು ಅದನ್ನು ತಕ್ಷಣವೇ ತಿನ್ನುತ್ತಿದ್ದಲ್ಲಿ ಖಂಡಿತವಾಗಿ. ಆದರೆ ಸ್ವಲ್ಪ ಸಮಯದವರೆಗೆ ನಾನು ಅದನ್ನು ಟೇಬಲ್ನಲ್ಲಿ ಬಿಟ್ಟರೆ, ಆ ಟೊಮೆಟೋವನ್ನು ಸ್ವಲ್ಪ ನೆನೆಸಿರುವುದರಿಂದ ಬ್ರೆಡ್ನ ಅಗ್ರ ಸ್ಲೈಸ್ ತಣ್ಣಗಾಗಬಹುದು. ನಾನು ಸಾಕಷ್ಟು ನಿರೀಕ್ಷಿಸದ ಸಮಸ್ಯೆಯಾಗಿದೆ, ಮತ್ತು ನಾನು ಗಮನಿಸಿದ ಮೊದಲು ವರ್ಷಗಳವರೆಗೆ ಸ್ಯಾಂಡ್ವಿಚ್ಗಳನ್ನು ಮಾಡಬಹುದು, ಆದರೆ ಒಮ್ಮೆ ನಾನು ಉತ್ತಮ ಸ್ಯಾಂಡ್ವಿಚ್ ನಿರ್ಮಿಸುವ ಸಲುವಾಗಿ ನನ್ನ ಕ್ರಮಾವಳಿಯನ್ನು ಬದಲಿಸುವ ಮಾರ್ಗಗಳ ಕುರಿತು ಯೋಚಿಸಲು ಆರಂಭಿಸಬಹುದು.

ಉದಾಹರಣೆಗೆ, ನಾನು ಟೊಮೆಟೊವನ್ನು ತೊಡೆದುಹಾಕಲು ಸಾಧ್ಯವಾಯಿತು. ಆದರೆ ನಾನು ಆ ಟೊಮೆಟೊ ರುಚಿಯನ್ನು ಕಳೆದುಕೊಳ್ಳಲು ಬಯಸುವುದಿಲ್ಲ. ಹಾಗಾಗಿ, ನಾನು ಬ್ರೆಡ್ ಮತ್ತು ಲೆಟಿಸ್ನ ನಂತರ ಸ್ಯಾಂಡ್ವಿಚ್ನಲ್ಲಿ ಟೊಮೆಟೊವನ್ನು ಹಾಕಬಹುದು. ಇದು ಲೆಟಿಸ್ ಟೊಮೆಟೊ ಮತ್ತು ಬ್ರೆಡ್ ನಡುವೆ ರಕ್ಷಣಾತ್ಮಕ ತಡೆಗೋಡೆಯಾಗಿ ರೂಪಿಸಲು ಅನುವುಮಾಡಿಕೊಡುತ್ತದೆ.

ಇದು ಅಲ್ಗಾರಿದಮ್ ವಿಕಸನಗೊಳ್ಳುತ್ತದೆ. ಮತ್ತು ಅಲ್ಗಾರಿದಮ್ ಒಂದು ಕಂಪ್ಯೂಟರ್ನಿಂದ ಅಲ್ಗಾರಿದಮ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕಾಗಿಲ್ಲ. ಒಂದು ಅಲ್ಗಾರಿದಮ್ ಒಂದು ಪ್ರಕ್ರಿಯೆ, ಮತ್ತು ಪ್ರಕ್ರಿಯೆಗಳು ನಮ್ಮ ಸುತ್ತಲಿವೆ.