From 02c8b260c53bf69ac54c7add06eeb0b2215ec43c Mon Sep 17 00:00:00 2001 From: piymishr Date: Thu, 20 Dec 2018 13:59:04 +0530 Subject: [PATCH 1/4] Initial Commit From 6cabec850316601dde54406683a0bed9f09f1247 Mon Sep 17 00:00:00 2001 From: piymishr Date: Thu, 20 Dec 2018 14:11:16 +0530 Subject: [PATCH 2/4] Office-1-12/20/2018 first commit --- .../dataStructure/BoundaryTraversalBt.java | 108 ++++++++++++++++++ .../dataStructure/MajorityElemntInArray.java | 5 + 2 files changed, 113 insertions(+) create mode 100644 learning/src/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.java create mode 100644 learning/src/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.java diff --git a/learning/src/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.java b/learning/src/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.java new file mode 100644 index 0000000..8f4e67e --- /dev/null +++ b/learning/src/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.java @@ -0,0 +1,108 @@ +package com.crackthatcd.learning.dataStructure; + +public class BoundaryTraversalBt { + + + private static void boundaryTraverse(BtNode head) + { + + if(head!=null) + { + BtNode nLeft=head; + System.out.println(head.data); + + //print leftmost tree + while(nLeft.left!=null) + { + if(!isLeafNode(nLeft.left)) + System.out.println(nLeft.left.data); + nLeft=nLeft.left; + } + + //printing leaf nodes + printLeaf(head); + + //printing rightmost tree + BtNode nRight=head; + while(nRight.right!=null) + { + if(!isLeafNode(nRight.right)) + System.out.println(nRight.right.data); + nRight=nRight.right; + } + + + } + else + return; + } + + private static boolean isLeafNode(BtNode node) + { + return (node.left==null && node.right==null); + + } + + private static void printLeaf(BtNode head) { + if(head==null) + return; + if(head.left==null && head.right==null) + System.out.println(head.data); + else { + printLeaf(head.left); + printLeaf(head.right); + + } + + + } + + + public static void main(String[] args) { + + + BinaryTree bt= new BinaryTree(); + bt.root= new BtNode(20); + bt.root.left= new BtNode(8); + bt.root.right= new BtNode(22); + bt.root.left.left= new BtNode(4); + bt.root.left.right= new BtNode(12); + bt.root.left.right.left= new BtNode(10); + bt.root.left.right.right= new BtNode(14); + bt.root.right.right= new BtNode(25); + + boundaryTraverse(bt.root); + + } + + + + +} + +class BinaryTree{ + + BtNode root; + +} + + + class BtNode{ + + BtNode left; + BtNode right; + int data; + + public BtNode() { + // TODO Auto-generated constructor stub + } + + public BtNode( int data) { + super(); + this.left = null; + this.right = null; + this.data = data; + } + + + } \ No newline at end of file diff --git a/learning/src/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.java b/learning/src/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.java new file mode 100644 index 0000000..2cf15a0 --- /dev/null +++ b/learning/src/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.java @@ -0,0 +1,5 @@ +package com.crackthatcd.learning.dataStructure; + +public class MajorityElemntInArray { + +} From 7c9dd0860a7b820faa1759ddf50de053cdcb623f Mon Sep 17 00:00:00 2001 From: piymishr Date: Thu, 20 Dec 2018 14:12:59 +0530 Subject: [PATCH 3/4] Office-1-12/20/2018 2nd commit --- learning/.classpath | 6 ++++++ learning/.project | 17 +++++++++++++++++ learning/.settings/org.eclipse.jdt.core.prefs | 11 +++++++++++ .../learning/dataStructure/BinaryTree.class | Bin 0 -> 407 bytes .../dataStructure/BoundaryTraversalBt.class | Bin 0 -> 1828 bytes .../learning/dataStructure/BtNode.class | Bin 0 -> 527 bytes .../dataStructure/MajorityElemntInArray.class | Bin 0 -> 366 bytes 7 files changed, 34 insertions(+) create mode 100644 learning/.classpath create mode 100644 learning/.project create mode 100644 learning/.settings/org.eclipse.jdt.core.prefs create mode 100644 learning/bin/com/crackthatcd/learning/dataStructure/BinaryTree.class create mode 100644 learning/bin/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.class create mode 100644 learning/bin/com/crackthatcd/learning/dataStructure/BtNode.class create mode 100644 learning/bin/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.class diff --git a/learning/.classpath b/learning/.classpath new file mode 100644 index 0000000..e461bea --- /dev/null +++ b/learning/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/learning/.project b/learning/.project new file mode 100644 index 0000000..9164624 --- /dev/null +++ b/learning/.project @@ -0,0 +1,17 @@ + + + learning + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/learning/.settings/org.eclipse.jdt.core.prefs b/learning/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..bb35fa0 --- /dev/null +++ b/learning/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/learning/bin/com/crackthatcd/learning/dataStructure/BinaryTree.class b/learning/bin/com/crackthatcd/learning/dataStructure/BinaryTree.class new file mode 100644 index 0000000000000000000000000000000000000000..fd61aa5699fcd51a9c26749dd87c7a1d6e1730cb GIT binary patch literal 407 zcma)2u};G<6g;;ffeHDMw!ytth6oJXcp3~`tt!M?z# zFji07Ri*umszwWp3#X`=lQ$jSl2KTgwZQGp|Nkdq4{7OIuk@4Y#-HV`wRIntHrlVL z$-{LQ80TP@ygk8Z5An8Rm&_b6l3e?@s}H2_Obn3m9rt93Bkr?50gf?Z#GC9@r@yqD BXo>&; literal 0 HcmV?d00001 diff --git a/learning/bin/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.class b/learning/bin/com/crackthatcd/learning/dataStructure/BoundaryTraversalBt.class new file mode 100644 index 0000000000000000000000000000000000000000..91e1cf72f6b80a0effd5f2340ae989ac9ebb21d6 GIT binary patch literal 1828 zcmbVMO>Yxd6g|%#e|AEQO>90&z9`^KNTxt3ZQ}Bgl+d6Ftr`>w=;qm;Btz|SG#Miy zb>08auG$qFHdJX76^Ugd^;h(7RD!nW&X|};S)^>{-Fx4C_nvd!ee>r(zrO_V5pHLY zP?%|S+IAz*jc>zs9X6VF%hiGJ`D=Dlhk7{-x{a_Kxb|G9>o;}q92fnO7avPySy5{*_cugT$omf#Y<~vO{k0f#?Qb;QdI-c*|?Y8S~a8K7; zu0ql2G<0i42cG!7pb@Tnn+i4O-4V_bUwuDtcDqzPbjk28vCmGdFCKS|S9;Y#q z!LUNyn-_(KEPQ9TJ9=A+W(V&9t!78R578D_ck3@uZk@1 zBIE<9HEH4k1{HDqKd+ySho&cOuYf|LZtDupDw&m-NP)G4UfT zMq7L2T&_NhuOOO8>d#5${blfp!o|ai@A=W7yPVpq$mI!cRz`O$NB1)m*CH*0PA3#L zH%uH6Hiiz?IIg7w`YR;rWOVt^y6*wt0OyxG-Jszvc=Aw=AMgyPWfm|-C`rC+5GYkc zn%@jPo2!zjwT_L zrx=;s!uSr({fGj?;>0^*Ir7>4_b+P)mbJv(3tO1l%M~Zi6>CX8%zX;uxxh zCgi`tMOys1aQ_mm1THgPM)s9F^Gexxg~4e3n;?jYvmZ->TU@^k|*X!Hp{(vo{)RJ JML&Us{{RBnpDO?W literal 0 HcmV?d00001 diff --git a/learning/bin/com/crackthatcd/learning/dataStructure/BtNode.class b/learning/bin/com/crackthatcd/learning/dataStructure/BtNode.class new file mode 100644 index 0000000000000000000000000000000000000000..9dd53ead83eb2263aa0741169e87b7ebed6876bd GIT binary patch literal 527 zcmb7=!A=4(5QhK40?Wm4;$wLrCLVkM zAIdmgNIZM!{L}WIZ>IhJ`TPQKgH8!KhD$$LxxV85s}8yL12+;}#WG&F0oQz@RqE?h z33s5!NgztF7-~zt;cmpq^W-gsuNkaJ%t_qQzi77%1tk}u0hn$KY{*c&ld;tI4Eb(v zMmG=C*G3){2R05Fsv{YTak}z^nsP4^4E0gs^JvDEH2eLbr9-)<^6s!VD}$lwpn#&u zS`JFPtnJ_cWd?haq{ncT?Y`_aFc&Jh4>`XY$PzF%n1D?rgyiEh>vn?7Xob)?e loc{4zGz=h!H>V*Ms31fGGGn)P^?Npv%!9MB&Zs7b^Ivn{VORhF literal 0 HcmV?d00001 diff --git a/learning/bin/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.class b/learning/bin/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.class new file mode 100644 index 0000000000000000000000000000000000000000..14b6e89f9d2261fe438c7e6e87f172bc593119f1 GIT binary patch literal 366 zcmbtQF;2rk5S(@F7)&4$B^@15a19+%B!q&5?&EEF Date: Thu, 20 Dec 2018 15:02:18 +0530 Subject: [PATCH 4/4] Office-1-12/20/2018 Mazority element --- .../dataStructure/MajorityElemntInArray.class | Bin 366 -> 1694 bytes .../dataStructure/MajorityElemntInArray.java | 59 ++++++++++++++++++ 2 files changed, 59 insertions(+) diff --git a/learning/bin/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.class b/learning/bin/com/crackthatcd/learning/dataStructure/MajorityElemntInArray.class index 14b6e89f9d2261fe438c7e6e87f172bc593119f1..85e2323b83dd29717cd7bbde8cf5c299c9ee0e33 100644 GIT binary patch literal 1694 zcmbtU%TgOh6g@o}X(V|7@sN1ivhhO_i9`Y+Hc#8cPLzl!Rivm=v1+6V43S3EFmi>g zspKEBGAlOO#0yL%DK^>V2eQpJKVfpNgbh^Kg(}_Y+kGGB+|$jUZ+<-mFoRVKhQdO% z*(g+fUHvxL)JVVOGU-Cf7y1jepT^h#sSbsA4>JjDv<8ZGqD#XH)6%`iFlwPwq&I?r9X;v?5Sp}aJq z;+!jAB{%`9i3qJlufVU8-P~(Lf8oMFoK}v3F5IBCI|2N5(TmA|xFgBajFz}q?gR<` z`hTW#xj^rw0x=9?i05&+^5+HqVsw;y%af})JJfa>pb6x z@R{K$TVjH{^0(XuCPSISJ?ri)3D)?cxj>rZxzoe5 zzj=PaD&NL^o5=34(gZQxW&L~P^neJnxP=^9PV!^|?_sJPo$K^GAG$&I!id+25jn05 zYJ8vh!cw^LX}m#9Db;OQ20KhLuA}lF%rO}8VOd?9tD+hgI`o#>0Nk+=0S9t$7Ojr6odX0}KPcV0k rg=0KE#wQn-w42aH&ITUg2g)eoraDkj#OL%HltONu-0?5y8z}t??%q&0 delta 58 zcmbQo`;Lk0)W2Q(7#J8#7z8GAy_}rGY|O|wc>%MQEHeW)P?(2-5lFHEX= threshold ? candidate : null; + } + + private static int getCandidate(int[] arr) { + int count = 1; + int mazorindex = 0; + for (int i = 1; i < arr.length; i++) { + if (arr[i] == arr[mazorindex]) + count++; + else + count--; + + if (count == 0) { + mazorindex = i; + count = 1; + } + + } + + return arr[mazorindex]; + } + + public static void main(String[] args) { + int[] arr = { 3, 3, 4, 2, 4, 4, 2, 4, 4, 3, 3, 3, 3, 4, 4, 4, 5, 3, 3, 3, 3, 3 }; + + /* + * with Moores voting approach + */ + System.out.println("Mazority element is : " + getMazorityElement(arr)); + + /* + * Using hashmap Approach + */ + + } }