diff --git a/DSA Kotlin/SquareRoot.kt b/DSA Kotlin/SquareRoot.kt new file mode 100644 index 0000000..2189a63 --- /dev/null +++ b/DSA Kotlin/SquareRoot.kt @@ -0,0 +1,25 @@ +class Solution { + fun mySqrt(x: Int): Int { + var s : Long = 0 + var e : Long = x.toLong() + + var mid : Long = s + (e-s)/2 + var res : Long = 0 + + while(s<=e){ + + if(mid*mid == x.toLong()) + return mid.toInt() + else if(mid*mid > x.toLong()) + e = mid - 1 + else{ + res = mid; + s = mid + 1 + } + + mid = s + (e-s)/2 + } + + return res.toInt() + } +} \ No newline at end of file diff --git a/DSA Kotlin/Tree Traversals/inOrderTraversal.kt b/DSA Kotlin/Tree Traversals/inOrderTraversal.kt new file mode 100644 index 0000000..ab01f2a --- /dev/null +++ b/DSA Kotlin/Tree Traversals/inOrderTraversal.kt @@ -0,0 +1,29 @@ +/** + * Example: + * var ti = TreeNode(5) + * var v = ti.`val` + * Definition for a binary tree node. + * class TreeNode(var `val`: Int) { + * var left: TreeNode? = null + * var right: TreeNode? = null + * } + */ +class Solution { + fun Inorder(root: TreeNode?,list: MutableList){ + + if(root==null) + return; + + Inorder(root.left,list) + list.add(root.`val`) + Inorder(root.right,list) + + return; + } + fun inorderTraversal(root: TreeNode?): List { + + val ans = mutableListOf() + Inorder(root,ans) + return ans + } +} \ No newline at end of file diff --git a/DSA Kotlin/Tree Traversals/postOrderTraversal.kt b/DSA Kotlin/Tree Traversals/postOrderTraversal.kt new file mode 100644 index 0000000..c95c107 --- /dev/null +++ b/DSA Kotlin/Tree Traversals/postOrderTraversal.kt @@ -0,0 +1,30 @@ +/** + * Example: + * var ti = TreeNode(5) + * var v = ti.`val` + * Definition for a binary tree node. + * class TreeNode(var `val`: Int) { + * var left: TreeNode? = null + * var right: TreeNode? = null + * } + */ +class Solution { + fun Postorder(root: TreeNode?,ans: MutableList){ + + if(root==null) + return + + Postorder(root.left,ans) + Postorder(root.right,ans) + ans.add(root.`val`) + + return + } + fun postorderTraversal(root: TreeNode?): List { + + val ans = mutableListOf() + Postorder(root,ans) + return ans + + } +} \ No newline at end of file diff --git a/DSA Kotlin/Tree Traversals/preOrderTraversal.kt b/DSA Kotlin/Tree Traversals/preOrderTraversal.kt new file mode 100644 index 0000000..d46f3e5 --- /dev/null +++ b/DSA Kotlin/Tree Traversals/preOrderTraversal.kt @@ -0,0 +1,30 @@ +/** + * Example: + * var ti = TreeNode(5) + * var v = ti.`val` + * Definition for a binary tree node. + * class TreeNode(var `val`: Int) { + * var left: TreeNode? = null + * var right: TreeNode? = null + * } + */ +class Solution { + fun Preorder(root: TreeNode?,list: MutableList){ + + if(root==null) + return + + list.add(root.`val`) + Preorder(root.left,list) + Preorder(root.right,list) + + return + } + fun preorderTraversal(root: TreeNode?): List { + + val ans = mutableListOf() + Preorder(root,ans) + return ans + + } +} diff --git a/DSA Kotlin/palindrome_number.kt b/DSA Kotlin/palindrome_number.kt new file mode 100644 index 0000000..727d31a --- /dev/null +++ b/DSA Kotlin/palindrome_number.kt @@ -0,0 +1,16 @@ +class Solution { + fun isPalindrome(x: Int): Boolean { + var num = x.toString() + var check = true + + for(i in 0..((num.length-1)/2)){ + if(num[i]!=num[num.length-1-i]) + { + check = false + break; + } + } + + return check + } +} \ No newline at end of file