Published on

Recover Binary Search Tree

Authors

📝 Vazifa tavsifi

Ikkilik qidiruv daraxti (BST) ning faqatgina ikkita tuguni qiymatlari o'zaro almashib qolgan. Siz daraxt tuzilishini o'zgartirmasdan, ushbu ikki tugunning o'rnini almashtirishingiz kerak.

Eslatma: Masala test tizimida oson ishlashi uchun, sizga daraxt tugunlari qiymatlarining pre-order yoki in-order massivi beriladi. Biz soddalik uchun xato joylashgan BST ni massiv ko'rinishida beramiz va siz to'g'rilangan massivni (xuddi shu ko'rinishda) qaytarishingiz kerak.

Massivda null o'rniga nil yoki -1 emas, balki faqat tugunlar qiymatlari (Level-order traversal kabi) ketma-ketligi yoziladi. (Soddalik uchun).
Masala asl nusxasi massiv emas TreeNode ustida ishlaydi, ammo biz testni array ustida qilamiz: xato BST in-order arrayi beriladi, siz uni to'g'ri in-order ga (ya'ni o'sish tartibiga) keltiring.

Misol:

Input: nums = [3,1,4,null,null,2] (Level-order) -> In-order: [1,3,2,4]
Biz sizga in-order beramiz: [1,3,2,4]
Output: [1,2,3,4]

Recover Binary Search Tree

Qiyin40 daqiqa30 ball

📚 Misollar

Kiruvchi: inorder = [1,3,2,4]
Chiquvchi: [1,2,3,4]
Kiruvchi: inorder = [3,2,1]
Chiquvchi: [1,2,3]
func solve(_ inorder: [Int]) -> [Int] { // Kodingizni shu yerga yozing // Xato in-order ro'yxatini to'g'rilang (ikki element o'rnini almashtiring) return [] }

Run tugmasini bosing

Buy mea coffee