ಕಂಪ್ಯೂಟರ್ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಪ್ರೋಗ್ರಾಮಿಂಗ್ ವಿಧಾನವಾಗಿ Quicksort

1960 ರಲ್ಲಿ, ಕೆ ಎ ಸೂಳೆ, ಮಾಹಿತಿ ಕ್ಷಿಪ್ರ ಬೇರ್ಪಡಿಸುವ ವಿಧಾನವನ್ನು ಅಭಿವೃದ್ಧಿ ಅತ್ಯಂತ ಪ್ರಸಿದ್ಧ ಆಯಿತು. ಇಂದು ವ್ಯಾಪಕವಾಗಿ ಧನಾತ್ಮಕ ಗುಣಗಳನ್ನು ಬಹಳಷ್ಟು ಹೊಂದಿದೆ, ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಬಳಸಲಾಗುತ್ತದೆ: ಸಾಮಾನ್ಯ ಸಂದರ್ಭಗಳಲ್ಲಿ ಬಳಸಬಹುದು, ಇದು ಹೆಚ್ಚುವರಿ ನೆನಪಿಗಾಗಿ ಒಂದು ಸಣ್ಣ ಹೆಚ್ಚಳವನ್ನು, ಪಟ್ಟಿಗಳು ವಿವಿಧ ಹೊಂದಬಲ್ಲ ಮತ್ತು ಅಳವಡಿಸಲು ಸುಲಭ ಅಗತ್ಯವಿದೆ. ಬಳಸಿಕೊಂಡು ಕೆಲಸ ತಪ್ಪುಗಳನ್ನು ಬಹಳಷ್ಟು ಅವಕಾಶ, ಮತ್ತು ಇದು ಸ್ವಲ್ಪ ಸರಿಹೊಂದುವುದಿಲ್ಲ: ಆದರೆ ಇದು ಹೊಂದಿದೆ Quicksort, ಕುಂದಕಗಳು.

ಆದಾಗ್ಯೂ, ಇದು ಅತಿ ಹೆಚ್ಚು ಓದಲ್ಪಟ್ಟ ಆವೃತ್ತಿಯಾಗಿದೆ. ಮೊದಲ ಪಾವತಿ ಹೋರ್ ನಂತರ, ಅನೇಕ ಅದರ ದಟ್ಟವಾದ ಅಧ್ಯಯನ ಮಾಡಲು. ದೊಡ್ಡ ನೆಲೆಯನ್ನು ಪ್ರಯೋಗವಾದಿ ಪುರಾವೆಯ ಪುಷ್ಠಿ ಇದು ಕೆಲಸ, ಖರ್ಚು ಸಮಯ ಕಂಡುಹಿಡಿಯುವ ಸೈದ್ಧಾಂತಿಕ ಪ್ರಶ್ನೆಗಳ ಮೇಲೆ ಸ್ಥಾಪಿಸಲಾಯಿತು. ಮೂಲ ಕ್ರಮಾವಳಿ ಮತ್ತು ಹೆಚ್ಚಿದ ವೇಗ ಸುಧಾರಿಸಲು ನಿಜವಾದ ಪ್ರಸ್ತಾಪಗಳನ್ನು ಇದ್ದವು.

Quicksort ಇದು ಎಲ್ಲೆಡೆ ಕಾಣಬಹುದು, ಬಹಳ ಸಾಮಾನ್ಯ. ಅದರ ಆಧಾರದ ಆನ್ ವಿಧಾನವಾಗಿದೆ TList.Sort, ಎಲ್ಲಾ ಆವೃತ್ತಿಗಳು ಡೆಲ್ಫಿ, ಸಮಯದ ಲೈಬ್ರರಿ ಫಂಕ್ಷನ್ ಸಿ ಪೂರ್ಣಗೊಳಿಸಲು, qsort ++ ತೆಗೆದುಕೊಂಡಿತು (1 ಹೊರತುಪಡಿಸಿ) ಇರುತ್ತವೆ ನೆರವೇರಿಸಲಾಗಿದೆ.

ಕಾರ್ಯಾಚರಣೆಯ ಮೂಲಭೂತ ತತ್ತ್ವವನ್ನು ಒಂದು "ವಿಭಜನೆಯನ್ನು ವಶಪಡಿಸಿಕೊಳ್ಳಲು" ಹೀಗೆ ರೂಪಿಸಬಹುದು. ಇದು ಎರಡು ಗುಂಪುಗಳಾಗಿ ಪಟ್ಟಿಯನ್ನು ಬ್ರೇಕಿಂಗ್ ಉಂಟಾಗುತ್ತದೆ ಮತ್ತು ಸ್ವತಃ ಪ್ರತಿ ಭಾಗಕ್ಕೆ ವಿಂಗಡಿಸಲಾಗುತ್ತದೆ. ಬೇಸ್ ಅಂಶ ನಿರ್ಧರಿಸುತ್ತದೆ ಮತ್ತು ತುಲನಾತ್ಮಕವಾಗಿ ತನ್ನ ಸಂಪೂರ್ಣ ಪಟ್ಟಿ ಮರುಜೋಡಣೆ: ಇದನ್ನು ಹೆಚ್ಚು ಗಮನ ಬೇರ್ಪಡೆಯ, ಕೆಳಗಿನ ಸಂಭವಿಸುವ ಸಮಯದಲ್ಲಿ ಹಣ ತೆಗೆದುಹಾಕಿ ಅನುಸರಿಸುತ್ತದೆ. ಅಭ್ಯರ್ಥಿಗಳ ಗುಂಪಿನ ಎಡಕ್ಕೆ ಬಿಲ್ಟ್ ಇದು ಮೌಲ್ಯವನ್ನು ಎಲ್ಲಾ ಇತರ ವರ್ಗಾವಣೆ ನಿಯಮಗಳನ್ನು ಕಡಿಮೆ. ಇದು ವಿಂಗಡಿಸಲಾದ ಪಟ್ಟಿಯಲ್ಲಿ ಮುಖ್ಯ ಅಂಶವು ಹಕ್ಕಿನ ಸ್ಥಳದಲ್ಲಿ ಎಂದು ತಿರುಗಿದರೆ. ಮುಂದಿನ ಹಂತದಲ್ಲಿ - ಅಂಶಗಳನ್ನು ನೆಲೆಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ಎರಡೂ ಒಂದು ಸವಾಲಾಗಿದೆ ಪುನರಾವರ್ತಿತ ಬೇರ್ಪಡಿಸುವ ಕಾರ್ಯಗಳನ್ನು. ಇದು ಪ್ರಕ್ರಿಯೆ ಪಟ್ಟಿ ಒಂದೇ ಅಂಶ ಹೊಂದಿದೆ ಮಾತ್ರ ಕೆಲಸ ಕೊನೆಗೊಳ್ಳುತ್ತದೆ ಎಂದು ವಿಂಗಡಿಸಬೇಕು ಮಾಡುವುದು. ಹೀಗಾಗಿ, ಒಂದು ತ್ವರಿತ ರೀತಿಯ ಒಂದು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕಾರ್ಯ ಕರಗತ ಮಾಡಿಕೊಳ್ಳಲು, ಅಗತ್ಯ ಕಡಿಮೆ ಮಟ್ಟದ ಕ್ರಮಾವಳಿಗಳು ಕೆಲಸ ತಿಳಿಯಲು: ಒಂದು) ಮೂಲ ಸದಸ್ಯರ ಆಯ್ಕೆ; ಬಿ) ಅತ್ಯಂತ ಪರಿಣಾಮಕಾರಿ ಕ್ರಮಪಲ್ಲಟನೆ ಪಟ್ಟಿಯನ್ನು ಸಣ್ಣ ಮತ್ತು ದೊಡ್ಡ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಎರಡು ಸೆಟ್ ಉತ್ಪಾದಿಸಲು.

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

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

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

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 kn.atomiyme.com. Theme powered by WordPress.