Blog

Create a Binary Search Tree (BST) with Minimal Height from a Sorted Increasing Order Array

Problem Statement

Create a binary search tree with minimal height from a sorted increasing order array. 

 

Approach

If you traverse a Binary Search Tree in inorder traversal, you will get the numbers printed in a sorted increasing order. So you can reverse process and create a binary search tree from a sorted increasing order array of integers.

Check if a Binary Tree is Balanced in O(N) time complexity

Problem statement

Check if a Binary Tree is Balanced in O(N) time complexity.

Assumption: Heights of two subtrees of any node should never differ by more than one, to consider a tree as balanced.

 

Approach

We can use a recursive function that will return the height of its subtree, or a special integer (-1) if the node is not balanced.

In every recusrive call, 

if node is null, then return 0.

SOAP Faults

We have already seen what SOAP faults are and how they are reprecented in the WSDL and SOAP message in the WSDL and SOAP overview notes respectively. Here we will try to consolidate the basic information related to SOAP faults.

Java application exceptions can be mapped to SOAP faults in WSDL/SOAP message.

 

Fault element in SOAP message

  • A SOAP message can have fault elements within it.

  • Fault elements contain errors and status information.

  • Fault is an optional element.

[Lab] SOAP Fault Demo

Java application exceptions can be mapped to SOAP faults in WSDL/SOAP message.

 

Problem statement

We will create a simple web service class with a single method that will accept an integer and check if it is even. If even we will return “Received even N” where N is the received even number.

If received number is not even, then we will throw a custom exception NotEvenNumberException that extends Exception.

Check if a Binary Tree is a Binary Search Tree (BST) using Property of Binary Tree

Approach

  • For a BST, all left nodes should be less than or equal to current node and current node must be less than all right nodes.

  • We will have a recursive function that checks if this property is true for every node and all its sub trees:

    • If the method get null node, it may return true, and should be first checked (exit condition for the recursion).

    • Check if 'left nodes is less than or equal to current node and current node must be less than all right nodes.

Pages

Quick Notes Finder Tags

Activities (1) advanced java (1) agile (3) App Servers (6) archived notes (2) Arrays (1) Best Practices (12) Best Practices (Design) (3) Best Practices (Java) (7) Best Practices (Java EE) (1) BigData (3) Chars & Encodings (6) coding problems (2) Collections (15) contests (3) Core Java (All) (55) course plan (2) Database (12) Design patterns (8) dev tools (3) downloads (2) eclipse (9) Essentials (1) examples (14) Exception (1) Exceptions (4) Exercise (1) exercises (6) Getting Started (18) Groovy (2) hadoop (4) hibernate (77) hibernate interview questions (6) History (1) Hot book (5) http monitoring (2) Inheritance (4) intellij (1) java 8 notes (4) Java 9 (1) Java Concepts (7) Java Core (9) java ee exercises (1) java ee interview questions (2) Java Elements (16) Java Environment (1) Java Features (4) java interview points (4) java interview questions (4) javajee initiatives (1) javajee thoughts (3) Java Performance (6) Java Programmer 1 (11) Java Programmer 2 (7) Javascript Frameworks (1) Java SE Professional (1) JPA 1 - Module (6) JPA 1 - Modules (1) JSP (1) Legacy Java (1) linked list (3) maven (1) Multithreading (16) NFR (1) No SQL (1) Object Oriented (9) OCPJP (4) OCPWCD (1) OOAD (3) Operators (4) Overloading (2) Overriding (2) Overviews (1) policies (1) programming (1) Quartz Scheduler (1) Quizzes (17) RabbitMQ (1) references (2) restful web service (3) Searching (1) security (10) Servlets (8) Servlets and JSP (31) Site Usage Guidelines (1) Sorting (1) source code management (1) spring (4) spring boot (3) Spring Examples (1) Spring Features (1) spring jpa (1) Stack (1) Streams & IO (3) Strings (11) SW Developer Tools (2) testing (1) troubleshooting (1) user interface (1) vxml (8) web services (1) Web Technologies (1) Web Technology Books (1) youtube (1)