ZAMYLA: ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಪುನರಾವರ್ತನ, ನೀವು ಮಾಡಬೇಕಾಗುತ್ತದೆ ಮೊದಲ ಪುನರಾವರ್ತನ ಅರ್ಥ. ಪ್ರೋಗ್ರಾಂ ವಿನ್ಯಾಸ ಎಂದರೆ ಪುನರಾವರ್ತನ ಹೊಂದಿರುವ ನೀವು ಸ್ವಯಂ ಸೂಚಕ ಎಂದು ವ್ಯಾಖ್ಯಾನಗಳು. ಪುನರಾವರ್ತಿತ ರಚನೆಗಳು, ಉದಾಹರಣೆಗೆ, ಡೇಟಾ ರಚನೆಗಳು ಎಂದು ತಮ್ಮನ್ನು ಸೇರಿವೆ ತಮ್ಮ ವ್ಯಾಖ್ಯಾನಗಳು. ಆದರೆ ಇಂದು, ನಾವು ಗಮನ ನೀನು ಪುನರಾವರ್ತಿತ ಕ್ರಿಯೆಗಳನ್ನು ಮೇಲೆ. , ಕಾರ್ಯಗಳನ್ನು ಒಳಹರಿವು ತೆಗೆದುಕೊಳ್ಳಬಹುದು ಸ್ಮರಿಸುತ್ತಾರೆ ವಾದಗಳು, ಮತ್ತು ಒಂದು ಮೌಲ್ಯವನ್ನು ಮರಳಲು ತಮ್ಮ ಮೂಲಕ ನಿರೂಪಿಸಲಾಗಿದೆ ಔಟ್ಪುಟ್ ಇಲ್ಲಿ ಈ ಚಿತ್ರದಲ್ಲಿ. ನಾವು ದೇಹದ ಬಾಕ್ಸ್ ನಗರದ ವಿಲ್ ಸೆಟ್ ಹೊಂದಿರುವ ಕಾರ್ಯ, ವ್ಯಾಖ್ಯಾನಿಸುವ ಸೂಚನೆಗಳನ್ನು ಇನ್ಪುಟ್ ಮತ್ತು ಔಟ್ಪುಟ್ ಒದಗಿಸಲು. ದೇಹದ ಒಳಗೆ ಒಂದು ಹತ್ತಿರದ ನೋಟ ಟೇಕಿಂಗ್ ಕಾರ್ಯ ಕರೆಗಳನ್ನು ಬಹಿರಂಗ ಇತರ ಕಾರ್ಯಗಳನ್ನು. ಈ ಸರಳ ಫಂಕ್ಷನ್, foo, ತೆಗೆದುಕೊಳ್ಳಲು ಇನ್ಪುಟ್ ಒಂದು ಸಾಲನ್ನು ತೆಗೆದುಕೊಂಡು ಮುದ್ರಿತ ಎಷ್ಟು ಅಕ್ಷರಗಳನ್ನು ಆ ವಾಕ್ಯವನ್ನು ಹೊಂದಿದೆ. ಸ್ಟ್ರಿಂಗ್ ಉದ್ದ ಫಂಕ್ಷನ್ strlen,, ಅವರ ಉತ್ಪನ್ನ, ಕರೆಯಲಾಗುತ್ತದೆ printf ಗೆ ಕರೆ ಅಗತ್ಯವಿದೆ. ಈಗ ಯಾವ ಒಂದು ಪುನರಾವರ್ತಿತ ಕಾರ್ಯ ಮಾಡುತ್ತದೆ ವಿಶೇಷ ಇದು ಸ್ವತಃ ಕರೆ ಎಂದು. ನಾವು ಈ ಪುನರಾವರ್ತಿತ ಪ್ರತಿನಿಧಿಸಬಹುದು ಈ ಕಿತ್ತಳೆ ಬಾಣ ಕರೆ ಮತ್ತೆ ಸ್ವತಃ ಲೂಪಿಂಗ್. ಆದರೆ ಮತ್ತೆ ಸ್ವತಃ ಪಾಲಿಸಲು ಮಾತ್ರ ತಿನ್ನುವೆ ಮತ್ತೊಂದು ಪುನರಾವರ್ತಿತ ಕರೆ ಮಾಡಲು, ಮತ್ತು ಇನ್ನೊಂದು ಮತ್ತೊಂದು. ಆದರೆ ಪುನರಾವರ್ತಿತ ಕ್ರಿಯೆಗಳನ್ನು ಅನಂತ ಸಾಧ್ಯವಿಲ್ಲ. ಅವರು ಹೇಗಾದರೂ ಕೊನೆಗೊಳಿಸಲು, ಅಥವಾ ನಿಮ್ಮ ಪ್ರೋಗ್ರಾಂ ಶಾಶ್ವತವಾಗಿ ರನ್. ನಾವು ಮುರಿಯಲು ಒಂದು ರೀತಿಯಲ್ಲಿ ಕಂಡುಹಿಡಿಯಬೇಕು ಪುನರಾವರ್ತಿತ ಕರೆಗಳನ್ನು ಔಟ್. ನಾವು ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಕರೆ. ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಸ್ಥಿತಿಯನ್ನು ತಲುಪಿದಾಗ, ಕಾರ್ಯ ಮಾಡುವ ಯಾವುದೇ ಹಿಂದಿರುಗಿಸುತ್ತದೆ ಮತ್ತೊಂದು ಪುನರಾವರ್ತಿತ ಕರೆಯು. ಶೂನ್ಯ ಫಂಕ್ಷನ್ ಹೈ, ಈ ಕಾರ್ಯ ಟೇಕ್ ಇನ್ಪುಟ್ ಎಂದು ಒಂದು ಇಂಟ್ N ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ. ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಮೊದಲ ಬರುತ್ತದೆ. ಎನ್ ಕಡಿಮೆ ಶೂನ್ಯ ಮುದ್ರಣ ಬೈ ಮತ್ತು ವೇಳೆ ಇತರ ಸಂದರ್ಭಗಳಲ್ಲಿ ಪ್ರತಿಯಾಗಿ, ಕಾರ್ಯ ಹೈ ಮುದ್ರಿಸಿ ಚಲಾಯಿಸಲ್ಪಡುತ್ತದೆ ಪುನರಾವರ್ತಿತ ಕರೆಯು. ಕ್ರಿಯೆ ಹೈ ಇನ್ನೊಂದು ಕರೆ ಒಂದು decremented ಇನ್ಪುಟ್ ಮೌಲ್ಯ. ಈಗ, ನಾವು ಹಾಯ್ ಮುದ್ರಿಸಲು ಸಹ ಕಾರ್ಯ ಕೊನೆಗೊಳ್ಳುವುದಿಲ್ಲ ನಾವು ರವರೆಗೆ ಅದರ ಲಾಭ ರೀತಿಯ ಮರಳಲು, ಈ ಸಂದರ್ಭದಲ್ಲಿ ಅನೂರ್ಜಿತ. ಆದ್ದರಿಂದ ಪ್ರತಿ ಎನ್ ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಬೇರೆ, ಈ ಕಾರ್ಯ ಹಾಯ್ ಹಾಯ್ ಹಿಂತಿರುಗುವುದು n ನ ಮೈನಸ್ 1. ಈ ಕಾರ್ಯ ಆದರೂ ಅನೂರ್ಜಿತ ಏಕೆಂದರೆ, ನಾವು ಸ್ಪಷ್ಟವಾಗಿ ಇಲ್ಲಿ ರಿಟರ್ನ್ ಪ್ರಕಾರ ಸಾಧ್ಯವಿಲ್ಲ. ನಾವು ಕಾರ್ಯ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಮಾಡುತ್ತೇವೆ. ಆದ್ದರಿಂದ ಹೈ ಕರೆ (3) ಹೈ ಮುದ್ರಿಸಿ ಕಾಣಿಸುತ್ತದೆ ಹೈ (2) (1) ಒಂದು ಹಾಯ್ ಕಾರ್ಯರೂಪಕ್ಕೆ ಇದು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಹೈ ಕಾರ್ಯರೂಪಕ್ಕೆ ಇದು (0), ಅಲ್ಲಿ ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಸ್ಥಿತಿಯನ್ನು ಭೇಟಿ. ಆದ್ದರಿಂದ ಹೈ (0) ಬೈ ಮುದ್ರಿಸುತ್ತದೆ ಮತ್ತು ಆದಾಯ. ಸರಿ. ಈಗ ನಾವು ಮೂಲಭೂತ ಅರ್ಥ ಎಂದು ಅವರು ಅಗತ್ಯವಿರುವ ರಿಕರ್ಸಿವ್, ಕನಿಷ್ಠ ಒಂದು ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಹಾಗೆಯೇ ಪುನರಾವರ್ತಿತ ಕರೆಯು, ತಂದೆಯ ಮೇಲೆ ಚಲಿಸೋಣ ಹೆಚ್ಚು ಅರ್ಥಪೂರ್ಣ ಉದಾಹರಣೆಗೆ. ಮರಳಬಹುದು ಎಂಬುದನ್ನು ಒಂದು ಯಾವುದೇ ಶೂನ್ಯವಾಗುವ. ನ ಅಪವರ್ತನೀಯ ನೋಡೋಣ ಲೆಟ್ ಕಾರ್ಯಾಚರಣೆಯಲ್ಲಿ ಸಾಮಾನ್ಯವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ ಸಂಭವನೀಯತೆ ಲೆಕ್ಕಾಚಾರಗಳು. ಎನ್ ಅಪವರ್ತನೀಯ ಪ್ರತಿ ಉತ್ಪನ್ನದ ಹೆಚ್ಚು ಪೂರ್ಣಸಂಖ್ಯೆ ಕಡಿಮೆ ಮತ್ತು ಎನ್ ಸಮಾನವಾಗಿರುತ್ತದೆ. ಆದ್ದರಿಂದ ಅಪವರ್ತನೀಯ ಐದು 5 ಬಾರಿ 4 ಪಟ್ಟು 3 ಬಾರಿ 2 ಬಾರಿ 1 120 ನೀಡಲು. ನಾಲ್ಕು ಅಪವರ್ತನೀಯ 4 ಬಾರಿ 3 ಬಾರಿ 2 ಬಾರಿ 1 24 ನೀಡಲು. ಮತ್ತು ಅದೇ ನಿಯಮ ಅನ್ವಯಿಸುತ್ತದೆ ಯಾವುದೇ ಪೂರ್ಣಸಂಖ್ಯೆ ಗೆ. ಆದ್ದರಿಂದ ಹೇಗೆ ನಾವು ಒಂದು ಪುನರಾವರ್ತಿತ ಬರೆಯಲು ಇರಬಹುದು ಅಪವರ್ತನೀಯ ಲೆಕ್ಕಾಚಾರ ಕಾರ್ಯ ಹಲವಾರು? ಹಾಗೆಯೇ, ನಾವು ಎರಡೂ ಗುರುತಿಸಲು ಅಗತ್ಯವಿದೆ ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಮತ್ತು ಪುನರಾವರ್ತಿತ ಕರೆಯು. ಪುನರಾವರ್ತಿತ ಕರೆಯು ಅದೇ ಆಗಿರುತ್ತದೆ ಬೇಸ್ ಹೊರತುಪಡಿಸಿ ಎಲ್ಲಾ ಸಂದರ್ಭದಲ್ಲಿಯೂ ಸಂದರ್ಭದಲ್ಲಿ, ಇದು ನಾವು ಮಾಡಬೇಕಾಗಬಹುದು ಅರ್ಥ ನಮಗೆ ನೀಡುವ ಮಾದರಿಯನ್ನು ಹೇಗೆ ನಮ್ಮ ಬಯಸಿದ ಪರಿಣಾಮವಾಗಿ. ಈ ಉದಾಹರಣೆಗೆ, ಹೇಗೆ 5 ಅಪವರ್ತನೀಯ ನೋಡಿ 1 2 3 4 ಗುಣಿಸಿದಾಗ ಒಳಗೊಂಡಿರುತ್ತದೆ ಮತ್ತು ಅದೇ ಗುಣಾಕಾರ , ಇಲ್ಲಿ ಕಂಡುಬರುತ್ತದೆ 4 ಅಪವರ್ತನೀಯ ವ್ಯಾಖ್ಯಾನ. ನಾವು 5 ಅಪವರ್ತನೀಯ ನೋಡಿ ಕೇವಲ 5 ಬಾರಿ 4 ಅಪವರ್ತನೀಯ. ಈಗ ಈ ಮಾದರಿಯನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ 4 ಹಾಗೂ ಅಪವರ್ತನೀಯ? ಹೌದು. ನಾವು 4 ಅಪವರ್ತನೀಯ ಹೊಂದಿರುವ ನೋಡಿ ಗುಣಾಕಾರ 3 ಬಾರಿ 2 ಬಾರಿ 1, 3 ಅಪವರ್ತನೀಯ ಬಹಳ ಅದೇ ವ್ಯಾಖ್ಯಾನ. ಆದ್ದರಿಂದ 4 ಅಪವರ್ತನೀಯ 4 ಬಾರಿ 3 ಸಮಾನವಾಗಿರುತ್ತದೆ ಅಪವರ್ತನೀಯ, ಹೀಗೆ ಇತ್ಯಾದಿ ನಮ್ಮ ಮಾದರಿ 1 ಅಪವರ್ತನೀಯ ರವರೆಗೆ ಅದರೊಂದಿಗೇ ಇದು ವ್ಯಾಖ್ಯಾನದಿಂದ 1 ಸಮಾನವಾಗಿರುತ್ತದೆ. ಯಾವುದೇ ಸಕಾರಾತ್ಮಕ ಇಲ್ಲ ಪೂರ್ಣಾಂಕಗಳ ಬಿಟ್ಟು. ಆದ್ದರಿಂದ ನಾವು ಮಾದರಿಯನ್ನು ನಮ್ಮ ಪುನರಾವರ್ತಿತ ಕರೆಯು. ಎನ್ ಅಪವರ್ತನೀಯ N ಬಾರಿ ಸಮಾನವಾಗಿರುತ್ತದೆ ಎನ್ ಅಪವರ್ತನೀಯ ಮೈನಸ್ 1. ಮತ್ತು ನಮ್ಮ ನೆಲೆಯನ್ನು ಸಂದರ್ಭದಲ್ಲಿ? ಕೇವಲ ನಮ್ಮ ವ್ಯಾಖ್ಯಾನ ಮಾಡುತ್ತೇವೆ 1 ಅಪವರ್ತನೀಯ. ಈಗ ನಾವು ಬರವಣಿಗೆಯ ಕಡೆಗೆ ಮಾಡಬಹುದು ಕ್ರಿಯೆಯ ಕೋಡ್. ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ, ನಾವು ಮಾಡುತ್ತೇವೆ ಪರಿಸ್ಥಿತಿ ಎನ್ ಸಮ 1, ಸಮನಾಗಿದ್ದರೆ ನಾವು 1 ಬರುತ್ತೇವೆ. ನಂತರ ಪುನರಾವರ್ತಿತ ಕರೆಯು ಮೇಲೆ ಚಲಿಸುವ, ನಾವು N ಬಾರಿ ಬರುತ್ತೇವೆ ಎನ್ ಅಪವರ್ತನೀಯ ಮೈನಸ್ 1. ಈಗ ಈ ನಮ್ಮ ಪರೀಕ್ಷಿಸಲು ಅವಕಾಶ. ನ ಅಪವರ್ತನೀಯ 4 ಪ್ರಯತ್ನಿಸೋಣ. ನಮ್ಮ ಕಾರ್ಯ ಪರ್ ಇದು ಸಮಾನ 4 ಬಾರಿ ಅಪವರ್ತನೀಯ (3). (3) ಅಪವರ್ತನೀಯ ಸಮಾನವಾಗಿರುತ್ತದೆ 3 ಬಾರಿ ಅಪವರ್ತನೀಯ (2). ಅಪವರ್ತನೀಯ (2) 2 ಬಾರಿ ಸಮಾನವಾಗಿರುತ್ತದೆ ಅಪವರ್ತನೀಯ (1), ಇದು 1 ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ಅಪವರ್ತನೀಯ (2) ಈಗ 2 ಬಾರಿ 1, 2 ಹಿಂದಿರುಗಿಸುತ್ತದೆ. (3) ಅಪವರ್ತನೀಯ ಈಗ ಮರಳಬಹುದು 3 ಬಾರಿ 2, 6. ಮತ್ತು ಅಂತಿಮವಾಗಿ, ಅಪವರ್ತನೀಯ (4) 4 ಬಾರಿ 6, 24 ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ನೀವು ಯಾವುದೇ ತೊಂದರೆ ಎದುರಿಸುತ್ತಿದ್ದರೆ ಪುನರಾವರ್ತಿತ ಕರೆಯು ಜೊತೆ ತೋರ್ಪಡಿಕೆಗೆ ಕಾರ್ಯ ಈಗಾಗಲೇ ಕೆಲಸ. ನಾನು ಈ ಮೂಲಕ ಅರ್ಥವೇನು ನೀವು ಮಾಡಬೇಕು ಮರಳಲು ನಿಮ್ಮ ಪುನರಾವರ್ತಿತ ಕರೆಗಳನ್ನು ನಂಬಿಕೆ ಬಲ ಮೌಲ್ಯಗಳು. ಉದಾಹರಣೆಗೆ, ನಾನು ತಿಳಿದಿದ್ದಲ್ಲಿ ಅಪವರ್ತನೀಯ (5) 5 ಬಾರಿ ಸಮನಾಗಿರುತ್ತದೆ ಅಪವರ್ತನೀಯ (4), ನಾನು ನಂಬಿಕೆ ಪಡೆಯಲಿದ್ದೇನೆ ಅಪವರ್ತನೀಯ (4) ನನಗೆ 24 ನೀಡುತ್ತದೆ. ನೀವು ವೇಳೆ, ವೇರಿಯಬಲ್ ಎಂದೇ ತಿಳಿಯುತ್ತಾರೆ , ನೀವು ಈಗಾಗಲೇ ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ ವೇಳೆ ಅಪವರ್ತನೀಯ (4). ಆದ್ದರಿಂದ ಯಾವುದೇ ಅಪವರ್ತನೀಯ (N), ಅದು n ನ ಉತ್ಪನ್ನ ಮತ್ತು ಹಿಂದಿನ ಅಪವರ್ತನೀಯ. ಮತ್ತು ಈ ಹಿಂದಿನ ಅಪವರ್ತನೀಯ ಕರೆ ಮೂಲಕ ಪಡೆಯಲಾಗುತ್ತದೆ ಎನ್ ಅಪವರ್ತನೀಯ ಮೈನಸ್ 1. ನೀವು ಬಳಸಿಕೊಂಡು ವೇಳೆ ಈಗ ನೋಡಿ ಒಂದು ಪುನರಾವರ್ತಿತ ನೀವೇ ಕೆಲಸ. ನಿಮ್ಮ ಟರ್ಮಿನಲ್ ಅಪ್ ಲೋಡ್, ಅಥವಾ run.cs50.net, ಮತ್ತು ಒಂದು ಕಾರ್ಯ ಮೊತ್ತ ಬರೆಯಲು ಒಂದು ಪೂರ್ಣಸಂಖ್ಯೆ n ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಹಿಂದಿರುಗಿಸುತ್ತದೆ ಎಲ್ಲಾ ಸತತ ಧನಾತ್ಮಕ ಮೊತ್ತವು ಎನ್ 1 ಪೂರ್ಣಾಂಕಗಳ. ನಾನು ಕೆಲವು ಮೊತ್ತವನ್ನು ಬರೆದ ನೀವು ನೀವು ಸಹಾಯ ಮೌಲ್ಯಗಳನ್ನು ನಮ್ಮ. ಮೊದಲ, ಲೆಕ್ಕಾಚಾರ ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಪರಿಸ್ಥಿತಿ. ನಂತರ, ಮೊತ್ತ ನೋಡಲು (5). ನೀವು ವಿಷಯದಲ್ಲಿ ಇದು ವ್ಯಕ್ತಪಡಿಸಲು ಮತ್ತೊಂದು ಮೊತ್ತದ? ಈಗ ಯಾವ ಮೊತ್ತ ಬಗ್ಗೆ (4)? ಹೇಗೆ ನೀವು ಮೊತ್ತ ವ್ಯಕ್ತಪಡಿಸಬಹುದು (4) ಮತ್ತೊಂದು ಮೊತ್ತ ಪರಿಭಾಷೆಯಲ್ಲಿ? ನೀವು ಮೊತ್ತವು ಒಮ್ಮೆ (5) ಮತ್ತು ಮೊತ್ತ (4) ಇತರ ಮೊತ್ತವನ್ನು ವ್ಯಕ್ತಪಡಿಸಲಾದ, ನೋಡಿ ನೀವು ಗುರುತಿಸಲು ವೇಳೆ ಮೊತ್ತ (N) ಮಾದರಿ. ಅಲ್ಲ, ಕೆಲವು ಸಂಖ್ಯೆಗಳು ಪ್ರಯತ್ನಿಸಿ ಮತ್ತು ತಮ್ಮ ಮೊತ್ತವನ್ನು ವ್ಯಕ್ತಪಡಿಸಲು ಮತ್ತೊಂದು ಸಂಖ್ಯೆಯ ಪರಿಭಾಷೆಯಲ್ಲಿ. ವಿಭಿನ್ನ ಮಾದರಿಗಳನ್ನು ಗುರುತಿಸಲು ಸಂಖ್ಯೆಗಳನ್ನು, ನಿಮ್ಮ ರೀತಿಯಲ್ಲಿ ಮಾಡಲು ಹಾಗೂ ಆರ್ ಯಾವುದೇ n ಮಾದರಿಯನ್ನು ಗುರುತಿಸಲು. ಪುನರಾವರ್ತನ ನಿಜವಾಗಿಯೂ ಪ್ರಬಲ ಸಾಧನ ಇಲ್ಲಿದೆ, ಆದ್ದರಿಂದ ಸಹಜವಾಗಿ ಇದು ಸೀಮಿತವಾಗಿರದೆ ನ ಗಣಿತ ಕಾರ್ಯಗಳನ್ನು. ಪುನರಾವರ್ತನ ಬಹಳ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಬಳಸಬಹುದು ಉದಾಹರಣೆಗೆ ಮರಗಳು ವ್ಯವಹರಿಸುವಾಗ. ಒಂದು ಮರಗಳು ಕಿರು ಪರಿಶೀಲಿಸಿ ಸಂಪೂರ್ಣ ವಿಮರ್ಶೆ, ಆದರೆ ಈಗ , ಎಂದು ಬೈನರಿ ಸರ್ಚ್ ಮರಗಳು ಮರುಪಡೆಯಲು ನಿರ್ದಿಷ್ಟ, ಪ್ರತಿ, ಗ್ರಂಥಿಗಳು ಮಾಡಲ್ಪಟ್ಟಿವೆ ಒಂದು ಮೌಲ್ಯ ಮತ್ತು ಎರಡು ನೋಡ್ ಪಾಯಿಂಟರ್ಸ್. ಸಾಮಾನ್ಯವಾಗಿ, ಈ ಪ್ರತಿನಿಧಿಸುತ್ತದೆ ಒಂದು ಸಾಲಿನ ಆಕಾಶದತ್ತ ಹೊಂದಿರುವ ಪೋಷಕ ನೋಡ್ ಎಡ ಮಗುವಿನ ನೋಡ್ ಮತ್ತು ಒಂದು ಹಕ್ಕನ್ನು ಮಕ್ಕಳ ನೋಡ್. ಒಂದು ಬೈನರಿ ಸರ್ಚ್ ರಚನೆ ಮರದ ಸೂಕ್ತವೆನಿಸಿದೆ ಒಂದು ಪುನರಾವರ್ತಿತ ಹುಡುಕಾಟ. ಪುನರಾವರ್ತಿತ ಕರೆಯು ಎರಡೂ ಹಾದುಹೋಗುತ್ತವೆ ಎಡ ಅಥವಾ ಬಲ ನೋಡ್, ಆದರೆ ಹೆಚ್ಚು ಮರದ ಸಣ್ಣ ಆ. ನೀವು ಮೇಲೆ ಕಾರ್ಯಾಚರಣೆ ಮಾಡಲು ಬಯಸುವ ಸೇ ಒಂದು ಬೈನರಿ ಮರದ ಪ್ರತಿಯೊಂದು ನೋಡ್. ಹೇಗೆ ಆ ಬಗ್ಗೆ ಹೋಗಬಹುದು? ಅಲ್ಲದೆ, ನೀವು ಒಂದು ಪುನರಾವರ್ತಿತ ಬರೆಯಬಹುದಾದರೆ ಕಾರ್ಯಾಚರಣೆ ಪ್ರದರ್ಶನ ಕಾರ್ಯ ಪೋಷಕ ನೋಡ್ ಮೇಲೆ ಮತ್ತು ಒಂದು ಪುನರಾವರ್ತಿತ ಮಾಡುತ್ತದೆ ಅದೇ ಕಾರ್ಯ ಕರೆ, ಎಡ ಹಾದುಹೋಗುವ ಮತ್ತು ಬಲ ಚೈಲ್ಡ್ ನೋಡ್ಗಳ. ಉದಾಹರಣೆಗೆ, ಈ ಫಂಕ್ಷನ್, foo, ಎಂದು ಒಂದು ನಿರ್ದಿಷ್ಟ ನೋಡ್ ಮೌಲ್ಯವನ್ನು ಮತ್ತು ಬದಲಾಯಿಸುತ್ತದೆ 1 ತನ್ನ ಮಕ್ಕಳ ಎಲ್ಲಾ. ಒಂದು ಶೂನ್ಯ ನೋಡ್ ಕಾರಣಗಳು ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಕಾರ್ಯ ಸೂಚಿಸುತ್ತದೆ ಮರಳಲು ಯಾವುದೇ ಗ್ರಂಥಿಗಳು ಇಲ್ಲ ಎಂದು ಎಂದು ಉಪ ಮರ ಬಿಟ್ಟು. ಇದು ಸಂಚರಿಸಲು ಅವಕಾಶ. ಮೊದಲ ಮೂಲ 13. ನಾವು 1 ಮೌಲ್ಯವನ್ನು ಬದಲಾಯಿಸಲು, ಮತ್ತು ನಂತರ ಕರೆ ನಮ್ಮ ಎಡ ಕಾರ್ಯ ಹಾಗೂ ಹಕ್ಕು. ಫಂಕ್ಷನ್, foo, ಎಡ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ ಮೊದಲ ಉಪ ಮರ, ಆದ್ದರಿಂದ ಎಡ ನೋಡ್ 1 ಮತ್ತು foo ಗೆ reassigned ಕಾಣಿಸುತ್ತದೆ ನೋಡ್ ಮಕ್ಕಳ ಮೇಲೆ ಎಂದು, ಮೊದಲ ಎಡ ತದನಂತರ ಸರಿ, ಹೀಗೆ ಇತ್ಯಾದಿ. ಮತ್ತು ಶಾಖೆಗಳನ್ನು ಇಲ್ಲ ಎಂದು ತಿಳಿಸಿ ಯಾವುದೇ ಹೆಚ್ಚು ಮಕ್ಕಳನ್ನು ಆದ್ದರಿಂದ ಅದೇ ಪ್ರಕ್ರಿಯೆಯ ಬಲ ಮಕ್ಕಳಿಗೆ ಮುಂದುವರಿಯುತ್ತದೆ ಇಡೀ ಮರದ ಗ್ರಂಥಿಗಳು ರವರೆಗೆ 1 ಗೆ reassigned. ನೀವು ನೋಡಬಹುದು ಎಂದು, ನೀವು ಸೀಮಿತವಾಗಿಲ್ಲ ಕೇವಲ ಒಂದು ಪುನರಾವರ್ತಿತ ಕರೆಯು. ಕೆಲಸ ಕೆಲಸ ಎಂದು ಕೇವಲ ಅನೇಕ. ನೀವು ಮರದ ಹೊಂದಿತ್ತು ಏನು ವೇಳೆ ಅಲ್ಲಿ ಪ್ರತಿ ನೋಡ್ ಮೂರು ಮಕ್ಕಳು, ಎಡ, ಮಧ್ಯಮ, ಮತ್ತು ಬಲ? ಹೇಗೆ ನೀವು foo ಸಂಪಾದಿಸಲು ಎಂದು? ಅಲ್ಲದೆ, ಸರಳ. ಮತ್ತೊಂದು ಪುನರಾವರ್ತಿತ ಕರೆಯು ಸೇರಿಸಲು ಮತ್ತು ಮಧ್ಯಮ ನೋಡ್ ಪಾಯಿಂಟರ್ ರಲ್ಲಿ ಹಾದು. ಪುನರಾವರ್ತನ ಶಕ್ತಿಶಾಲಿ ಮತ್ತು ಆಗಿದೆ ಸೊಗಸಾದ ಬಗ್ಗೆ, ಆದರೆ ಇದು ಒಂದು ಮಾಡಬಹುದು ಮೊದಲಿಗೆ ಕಷ್ಟ ಪರಿಕಲ್ಪನೆ, ಆದ್ದರಿಂದ ಎಂದು ರೋಗಿಯ ಮತ್ತು ನಿಮ್ಮ ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಬಹುದು. ಬೇಸ್ ಪ್ರಕರಣ ಪ್ರಾರಂಭಿಸಿ. ಇದು ಸಾಮಾನ್ಯವಾಗಿ ಗುರುತಿಸಲು ಸುಲಭ ಇಲ್ಲಿದೆ, ತದನಂತರ ನೀವು ಕೆಲಸ ಮಾಡಬಹುದು ಹಿಂದಕ್ಕೆ ಅಲ್ಲಿಂದ. ನೀವು ತಲುಪಲು ಅಗತ್ಯವಿದೆ ಗೊತ್ತು ನಿಮ್ಮ ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ, ಆದ್ದರಿಂದ ಮೈಟ್ ನೀವು ಕೆಲವು ಸುಳಿವು ನೀಡಿ. ಒಂದು ನಿರ್ದಿಷ್ಟ ಪ್ರಕರಣದಲ್ಲಿ ವ್ಯಕ್ತಪಡಿಸಲು ಪ್ರಯತ್ನಿಸಿ ಇತರ ಸಂದರ್ಭಗಳಲ್ಲಿ ಪರಿಭಾಷೆಯಲ್ಲಿ, ಅಥವಾ ಉಪ ಸೆಟ್ಗಳಲ್ಲಿ. ಈ ಸಣ್ಣ ವೀಕ್ಷಿಸಲು ಧನ್ಯವಾದಗಳು. ಅತ್ಯಂತ ಕನಿಷ್ಠ ಈಗ ನೀವು ಈ ರೀತಿಯ ಜೋಕ್ ಅರ್ಥ. ನನ್ನ ಹೆಸರು Zamyla ಹೊಂದಿದೆ, ಮತ್ತು ಈ CS50 ಹೊಂದಿದೆ. ಹಾಯ್, ಈ ಕಾರ್ಯ ತೆಗೆದುಕೊಳ್ಳಿ, ಒಂದು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಶೂನ್ಯ ಕಾರ್ಯವನ್ನು ಒಂದು ಇಂಟ್, ಎನ್, ಇನ್ಪುಟ್. ಬೇಸ್ ಸಂದರ್ಭದಲ್ಲಿ ಮೊದಲ ಬರುತ್ತದೆ. ಎನ್ 0 ಕಡಿಮೆ, ಮುದ್ರಣ ವೇಳೆ "ಬೈ" ಮತ್ತು ರಿಟರ್ನ್.