コード例 #1
0
        private static int[] ReverseOrder(BinaryTreeNode <int> root, int k)
        {
            List <int> list = new List <int>();

            LargestElements.ReverseOrder(root, list, k);
            return(list.ToArray());
        }
コード例 #2
0
        private static void ReverseOrder(BinaryTreeNode <int> root, List <int> list, int k)
        {
            if (root == null)
            {
                return;
            }

            LargestElements.ReverseOrder(root.Right, list, k);

            if (list.Count < k)
            {
                list.Add(root.Data);
            }

            if (list.Count < k)
            {
                LargestElements.ReverseOrder(root.Left, list, k);
            }
        }