private void button8_Click(object sender, EventArgs e)
        {
            //Construct a binary tree as the given example
            ////////////4/////////
            ///////2 ////////5///
            ////1////3/////////6
            //0////////////////////

            //Expected output as a doubly linked list  0,1,2,3,4,5,6

            BiNode root = new BiNode(4);

            root.Node1 = new BiNode(2);
            root.Node2 = new BiNode(5);

            root.Node1.Node1 = new BiNode(1);
            root.Node1.Node2 = new BiNode(3);
            root.Node2.Node1 = null;
            root.Node2.Node2 = new BiNode(6);

            root.Node1.Node1.Node1 = new BiNode(0);

            BinaryTreeToLinkedList obj = new BinaryTreeToLinkedList();


            string output = obj.ConvertOptimalUsingCircularLogic(root);

            this.textBox6.Text = output;
        }
        private void button7_Click(object sender, EventArgs e)
        {
            //Construct a binary tree as the given example
            ////////////4/////////
            ///////2 ////////5///
            ////1////3/////////6
            //0////////////////////

            //Expected output as a doubly linked list  0,1,2,3,4,5,6

            //BiNode root = new BiNode(4);

            //root.Node1 = new BiNode(2);
            //root.Node2 = new BiNode(5);

            //root.Node1.Node1 = new BiNode(1);
            //root.Node1.Node2 = new BiNode(3);
            //root.Node2.Node1 = null;
            //root.Node2.Node2 = new BiNode(6);

            //root.Node1.Node1.Node1 = new BiNode(0);

            //test case as in the picture

            BiNode root = new BiNode(1);

            root.Node1 = new BiNode(2);
            root.Node2 = new BiNode(3);

            root.Node1.Node1 = new BiNode(4);
            root.Node1.Node2 = new BiNode(5);
            root.Node2.Node1 = new BiNode(6);
            root.Node2.Node2 = new BiNode(7);

            BinaryTreeToLinkedList obj = new BinaryTreeToLinkedList();


            string output = obj.ConvertWithoutUsingAdditionDataStructure(root);

            this.textBox6.Text = output;
        }