["   \n  \n [ਗੂਗਲ ਟੈਸਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹੇਠ ਲਿਖੀ ਕਲਾਸ ਲਈ ਯੂਨਿਟ ਟੈਸਟ ਬਣਾਓਃ \\n\\n\\n\\n\\n ਕਲਾਸ ਹੱਲ {\\nਪਬਲਿਕਃ \\n ਟਰੀਨੋਡ * ਬੈਲੰਸਬੀਐਸਟੀ (ਟਰੀਨੋਡ * ਰੂਟ) {\\n ਰਿਟਰਨSortedArrayToBst (in\u0a11ਰ੍ਡਰਟ੍ਰੈਵਰਸਲ (ਰੂਟ)); \\n} \\n\\nਪ੍ਰੈਵੇਟਃ \\n ਟਰੀਨੋਡ * sortedArrayToBst (ਕਾਂਸਟ ਵੈਕਟਰ <int> & arr) {\\n ਟਰੀਨੋਡ * ਨਤੀਜਾ = ਨਲਪਟਰ; \\nਵੈਕਟਰ <ਟੁਪਲ <ਇੰਟ, ਇੰਟ, ਟਰੀਨੋਡ * *>> ਐਸਟੀਕੇ = {{0, arr.size (), & ਨਤੀਜਾ}}; \\n ਜਦੋਂ ਕਿ (! stk.empty ()) {\\n ਕਾਂਸਟ ਆਟੋ [i, j, ret] = stk.back ();stk.pop_back (); \\n ਜੇਕਰ (i> = j) {\\n ਜਾਰੀ ਰਹੇ; \\n} \\n ਸਥਿਰਤਾ ਆਟੋ ਅਤੇ ਮੱਧ = i + (j-i)/2; \\n * ret = ਨਵਾਂ ਟਰੀਨੋਡ (arr [ਮੱਧ]); \\n stk.emplace_back (ਮੱਧ + 1, j,& ((* ਰੀਟ)-> ਸੱਜੇ)); \\n stk.emplace_back (i, ਮੱਧ, & ((* ਰੀਟ)-> ਖੱਬੇ)); \\n} \\n ਰਿਟਰਨ ਨਤੀਜਾ; \\n} \\n\\n ਵੈਕਟਰ <int> ਇਨਆਰਡਰਟ੍ਰੈਵਰਸਲ (ਟਰੀਨੋਡ * ਰੂਟ) {\\nਵੈਕਟਰ <ਇੰਟ> ਨਤੀਜਾ; \\n ਵੈਕਟਰ <ਪੇਅਰ <ਟ੍ਰੀਨੋਡ *, ਬੂਲ>> ਐਸਟੀਕੇ; \\n stk.emplace_back (ਰੂਟ, ਗਲਤ); \\n ਜਦੋਂ ਕਿ (!stk.back (); stk.pop_back (); \\n ਜੇਕਰ (! ਨੋਡ) {\\n ਜਾਰੀ ਰਹੇ; \\n} \\n ਜੇਕਰ (ਦੌਰਾ ਕੀਤਾ ਗਿਆ) {\\n result.emplace_back (ਨੋਡ-> ਵੈਲ); \\n} ਹੋਰ {\\nstk.emplace_back (ਨੋਡ-> ਸੱਜੇ, ਗਲਤ); \\n stk.emplace_back (ਨੋਡ, ਸਹੀ); \\n stk.emplace_back (ਨੋਡ-> ਖੱਬੇ, ਗਲਤ); \\n} \\n} \\n ਰਿਟਰਨ ਨਤੀਜਾ; \\n} \\n; ' ", 'ਗੂਗਲ ਟੈਸਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹੇਠ ਲਿਖੀ ਕਲਾਸ ਲਈ ਯੂਨਿਟ ਟੈਸਟ ਬਣਾਓਃ ਕਲਾਸ ਹੱਲ {ਪਬਲਿਕਃ ਟਰੀਨੋਡ * ਬੈਲੰਸਬੀਐਸਟੀ (ਟਰੀਨੋਡ * ਰੂਟ) {ਰਿਟਰਨsortedArrayToBst (in\u0a11ਰ੍ਡਰਟ੍ਰੈਵਰਸਲ (ਰੂਟ));} ਪ੍ਰਾਈਵੇਟਃ ਟਰੀਨੋਡ * sortedArrayToBst (ਕਾਂਸਟ ਵੈਕਟਰ <int> & arr) {ਟਰੀਨੋਡ * ਨਤੀਜਾ = ਨਲਪਟਰ;ਵੈਕਟਰ <ਟੁਪਲ <ਇੰਟ, ਇੰਟ, ਟਰੀਨੋਡ * *>> ਐਸਟੀਕੇ = {{0, arr.size (), & ਨਤੀਜਾ}}; ਜਦੋਂ ਕਿ (! stk.empty ()) {ਕਾਂਸਟ ਆਟੋ [ਆਈ, ਜੇ, ਰੇਟ] = stk.back (); stk.pop_back (); ਜੇਕਰ(i> = j) {ਜਾਰੀ ਰੱਖੋ;} ਕਾਂਸਟ ਆਟੋ & ਮਿਡ = i + (j-i)/2; * ਰੇਟ = ਨਵਾਂ ਟ੍ਰੀਨੋਡ (arr [ਮੱਧ]); stk.emplace_back (ਮੱਧ + 1, j, & ((* ਰੇਟ)-> ਸੱਜੇ));stk.emplace_back (i, ਮੱਧ, & (* ret)-> ਖੱਬੇ);} ਰਿਟਰਨ ਨਤੀਜਾ;} ਵੈਕਟਰ <int> ਇਨਾਰਡਰਟ੍ਰੈਵਰਸਲ (ਟਰੀਨੋਡ * ਰੂਟ) {ਵੈਕਟਰ <int> ਨਤੀਜਾ; ਵੈਕਟਰ <ਪੇਅਰ <ਟਰੀਨੋਡ*, bool>> stk; stk.emplace_back (ਰੂਟ, ਗਲਤ); ਜਦੋਂ ਕਿ (! stk.empty ()) {ਕਾਂਸਟ ਆਟੋ [ਨੋਡ, ਵਿਜ਼ਿਟ ਕੀਤਾ ਗਿਆ] = stk.back (); stk.pop_back (); ਜੇਕਰ (! ਨੋਡ) {ਜਾਰੀ ਰੱਖੋ;}ਜੇਕਰ (ਦੌਰਾ ਕੀਤਾ) {result.emplace_back (ਨੋਡ-> ਵੈਲ);} ਹੋਰ {stk.emplace_back (ਨੋਡ-> ਸਹੀ, ਗਲਤ); stk.emplace_back (ਨੋਡ, ਸਹੀ);stk.emplace_back (ਨੋਡ-> ਖੱਬਾ, ਗਲਤ);}} ਰਿਟਰਨ ਨਤੀਜਾ;}}; \n ']