Subtree of Another Tree (LeetCode 572) | Full solution with examples | Study Algorithms

  Рет қаралды 7,451

Nikhil Lohia

Nikhil Lohia

Күн бұрын

Пікірлер: 41
@unemployedcse3514
@unemployedcse3514 4 ай бұрын
guys who ever is confused with '^' in Stringbuilder it is to handle below kind of tree node TreeNode root = new TreeNode(12); TreeNode subRoot = new TreeNode(2); where 12 (tweleve) will be treated as 1,2 subtree as 2 it gives true to figure out item or data in node we are using ^ as seperator still if u need confirmation pls refer test case created by nikhil in description code and nikhil small suggestion pls explain or stick to same logic during dry run , this will give more clarification and reduces doubts , in last example no null were included in ur explanation rest vedio is very helpful thank you ❤
@alisheheryar1770
@alisheheryar1770 8 ай бұрын
you have to add string("^") to your initial string otherwise it breaks at special cases like s = 12nullnull t = 2nullnull Cheeky Nikhil.
@garvitarora7777
@garvitarora7777 7 ай бұрын
thanks bro
@rahulsinghdeo7519
@rahulsinghdeo7519 Жыл бұрын
Hey can you please explain how the "sb" object of String builder is preserve-ing the value when it moves to next iteration.
@syedomarali2678
@syedomarali2678 4 ай бұрын
It won't take O(n). Java's .contains() works in O(MN). Use efficient pattern-matching algorithms like KMP to achieve linear TC.
@AlexTopGT
@AlexTopGT Жыл бұрын
thank you! best explanation.
@minnikeswarrao6185
@minnikeswarrao6185 Жыл бұрын
Time complexity shouldn't be O(n) ...since String.contains() takes O(m+n)
@nikoo2805
@nikoo2805 Жыл бұрын
O(m + n) will translate to O(n), where n > m
@pranavm9301
@pranavm9301 9 ай бұрын
O(m+n) is still O(n) since m O(2n) which is worst case when n=m, which is still O(n)
@smridhjain4100
@smridhjain4100 5 ай бұрын
Whenever you put StringBuilder sb = new StringBuilder("^"); it passes the test cases but if you dont put the ^ it fails a single test case of root =[1,2] and subroot=[2] , can you explain why please? I think this is the same query that others trying to ask in the comment section
@nikoo28
@nikoo28 5 ай бұрын
you have to add string("^") to your initial string otherwise it breaks at special cases like s = 12nullnull t = 2nullnull
@shrirambalaji2915
@shrirambalaji2915 Жыл бұрын
Thank you brother
@killeraloo3247
@killeraloo3247 11 ай бұрын
OP solution. 🧡 from remote.
@djpsn7094
@djpsn7094 Жыл бұрын
Why we took ^ in StringBuilder
@nikoo28
@nikoo28 Жыл бұрын
it is just an anchor
@suryaram6874
@suryaram6874 22 күн бұрын
what about inorder traversal?
@yemeniabedontaclf
@yemeniabedontaclf Жыл бұрын
Repeated DNA Sequences. make vedio about this
@Rieshu-l9i
@Rieshu-l9i 8 ай бұрын
Solve "node at distance k from target node" Please🙏
@pratyushtripathy1463
@pratyushtripathy1463 8 ай бұрын
Only pre-Order traversal will work here, In other 2 (POT & IOT) all TCs will not pass
@codeLine7
@codeLine7 Жыл бұрын
very nice explanation.
@nikoo28
@nikoo28 Жыл бұрын
Keep watching
@varundwivedi1079
@varundwivedi1079 Жыл бұрын
Great.Thanks
@blacklight8932
@blacklight8932 Жыл бұрын
didnt work for all testcases
@nikoo28
@nikoo28 Жыл бұрын
Check the code in description. It passes on leetcode
@adirang
@adirang 3 ай бұрын
​@nikoo28 The solution does not work for in order traversal when root is [1,2,3] and sub root is [1,2]. Code returns True but should be False.
@garvitarora7777
@garvitarora7777 7 ай бұрын
this is failing in this test case sir Input root =[12] subRoot =[2]
@nikoo28
@nikoo28 7 ай бұрын
What output are you expecting?
@sheikhmkrifat7749
@sheikhmkrifat7749 7 ай бұрын
i applied the same way in inorder and postorder after that it doesn't pass all the test cases in leetcode.
@aryavardhansingh2162
@aryavardhansingh2162 7 ай бұрын
same here do you know the reason ?
@sheikhmkrifat7749
@sheikhmkrifat7749 7 ай бұрын
@@aryavardhansingh2162 yeah, i found that preOrder is used for comparing structure of BT, cause here root node comes first , then left and right on the other hand inorder and post dosent follow this, for that preOrder is used to compare two BT.
@shahriarbadhon4596
@shahriarbadhon4596 Жыл бұрын
Nice
@sumeersaifi6354
@sumeersaifi6354 10 ай бұрын
you code is not fully correct if there is root 12 and subroot 2 then for 12 it will be 12nullnull and for will be 2nullnull and when you check root.contain(subroot) it will give true but it should be false
@nikoo28
@nikoo28 9 ай бұрын
it passes the constraints on leetcode. can you explain your test case a little better?
@sumeersaifi6354
@sumeersaifi6354 9 ай бұрын
I need to check will let you know
@AniketWaghmare-qi7wm
@AniketWaghmare-qi7wm 2 ай бұрын
Hey @nikoo28 Please Make Video On Question Number 110. Balanced Binary Tree. Please Make video fast because my interview in Amazon. And your teaching is so good
@BACSShaileshShettar
@BACSShaileshShettar 8 ай бұрын
test cases failing
@nikoo28
@nikoo28 8 ай бұрын
check the code in the github link provided in video description.
@adirang
@adirang 3 ай бұрын
​​​@@nikoo28The solution does not work for in order traversal when root is [1,2,3] and sub root is [1,2]. Code returns True but should be False.
@nikoo28
@nikoo28 3 ай бұрын
@@adirang just checked again, code is returning False.
@droid-aman
@droid-aman 7 ай бұрын
love ur explanion v much,, +1 suscription from my side buddy!!
@thor1626
@thor1626 8 ай бұрын
will fail only one test case. Anyways this method is not recommended, good explanation tho.
This Game Is Wild...
00:19
MrBeast
Рет қаралды 152 МЛН
Ice Cream or Surprise Trip Around the World?
00:31
Hungry FAM
Рет қаралды 21 МЛН
The Ultimate Sausage Prank! Watch Their Reactions 😂🌭 #Unexpected
00:17
La La Life Shorts
Рет қаралды 8 МЛН
When Cucumbers Meet PVC Pipe The Results Are Wild! 🤭
00:44
Crafty Buddy
Рет қаралды 57 МЛН
8 patterns to solve 80% Leetcode problems
7:30
Sahil & Sarra
Рет қаралды 438 М.
Subtree of Another Tree - Leetcode 572 - Python
14:15
NeetCode
Рет қаралды 170 М.
check if a tree is subtree of another tree
7:40
Vivekanand Khyade - Algorithm Every Day
Рет қаралды 34 М.
This Game Is Wild...
00:19
MrBeast
Рет қаралды 152 МЛН