# Tree: Height of a Binary Tree

###### Tree: Height of a Binary Tree
``````import java.util.*;
import java.io.*;

class Node {
Node left;
Node right;
int data;

Node(int data) {
this.data = data;
left = null;
right = null;
}
}

class Solution {

/*
class Node
int data;
Node left;
Node right;
*/
public static int height(Node root) {
// Write your code here.
Queue<Node> q = new LinkedList<Node>();
Queue<Integer> level = new LinkedList<Integer>();
q.add(root);
level.add(0);

int currentLevel = 0;
while(!q.isEmpty()){
Node current =q.poll();
currentLevel = level.poll();
if(current.left !=null){
q.add(current.left);
level.add(currentLevel+1);
}
if(current.right !=null){
q.add(current.right);
level.add(currentLevel+1);
}
}
return currentLevel;
}

public static Node insert(Node root, int data) {``````

# 868. Binary Gap

868. Binary Gap

```class Solution {
public int binaryGap(int N) {
String binary = Integer.toBinaryString(N);
int first = 0;
while (first < binary.length() && binary.charAt(first) != '1'){
first ++;}
if (first == binary.length()) return 0;
int diff = Integer.MIN_VALUE;
int current = first;
for (int i = first+1; i  diff){
diff = i - current;
}
current = i;
}
}
if (diff == Integer.MIN_VALUE) return 0;
return diff;
}
}
```

# How to view all of a channel’s uploads in a playlist?

Go to a video from this channel
click on channel name
Copy the string UC************** that is in the end of channel URL https://www.youtube.com/channel/UC**************
replace UC************** with UU**************
Go to this url that is a list of all uploads:

Enjoy!

Reference:

# 350. Intersection of Two Arrays II

350. Intersection of Two Arrays II

```class Solution {
public int[] intersect(int[] nums1, int[] nums2) {
Arrays.sort(nums1);
Arrays.sort(nums2);
int i = 0;
int j = 0;
ArrayList intersection = new ArrayList();
while  (i < nums1.length && j < nums2.length){
if(nums1[i] == nums2[j]){
intersection.add(nums1[i]);
i++;
j++;
}else if (nums1[i] < nums2[j]){
i++;
} else if (nums2[j] < nums1[i]){
j++;
}
}
int[] out = new int[intersection.size()];
for(int k = 0; k < intersection.size(); k++)
out[k] = intersection.get(k);
return out;
}

}

```

# 961. N-Repeated Element in Size 2N Array

961. N-Repeated Element in Size 2N Array

```class Solution {
public int repeatedNTimes(int[] A) {
int N = A.length/2;
HashMap freq = new HashMap();
for(int i = 0; i < A.length; i++){
if(freq.get(A[i]) == null)
freq.put(A[i],1);
else if(freq.get(A[i]) != null){
freq.put(A[i],freq.get(A[i]) + 1);
if(freq.get(A[i]) == N) return A[i];

}
}
return 0;
}
}
```

# شهادة القرآن الكريم

الحمد لله أن من علينا “قل بفضل الله وبرحمته فبذلك فليفرحوا هو خير مما يجمعون”

شهادة تقدير

الحمد لله الذى أعز حامل القرآن الكريم والصلاة والسلام على رسول الله القائل: “خيركم من تعلم القرآن وعلمه”

يسر الإدارة العامة لشئون القرآن منح هذه الشهادة للطالب/ عمر خميس مصطفى

وذلك لفوزه فى المسابقة القرآنية عام 1440 ه وذلك فى حفظ القرآن الكريم وكان تقديره/ امتياز (ب)

وقد تم اختياره من قبل لجنة متخصصة فى علوم القرآن الكريم والقراءا بإشراف الإدارة العامة لشئون القرآن الكريم بقطاع المعاهد الأزهرية

# Udacity – Full Stack Developer Track

1 MILLION ARAB CODERS INITIATIVE

Full Stack Developer Track