Skip to content

Instantly share code, notes, and snippets.

@dmnugent80
dmnugent80 / IsSymmetricBinaryTree.java
Created March 1, 2015 19:16
Is Symmetric Binary Tree
/**
* Definition for binary tree
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
public class Solution {
public class Solution {
public void rotate(int[][] matrix) {
int n = matrix.length-1;
if (n == 0) return;
for (int i = 0; i <= n/2; i++){
for (int j = i; j < n-i; j++){
int temp = matrix[i][j];
matrix[i][j] = matrix[n-j][i];
matrix[n-j][i] = matrix[n-i][n-j];
@dmnugent80
dmnugent80 / BinaryTreeIterativeInOrder.java
Created March 1, 2015 20:30
Binary Tree Iterative In Order Traversal
/**
* Definition for binary tree
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
public class Solution {
@dmnugent80
dmnugent80 / PascalTriangle.java
Created March 1, 2015 20:50
Pascal's Triangle
public class Solution {
public List<List<Integer>> generate(int numRows) {
List<List<Integer>> allRows = new ArrayList<List<Integer>>();
ArrayList<Integer> row = new ArrayList<Integer>();
for (int i = 0; i < numRows; i++){
row.add(0, 1);
for (int j = 1; j < row.size()-1; j++){
row.set(j, row.get(j) + row.get(j+1));
}
allRows.add(new ArrayList<Integer>(row));
@dmnugent80
dmnugent80 / MaximumSubarray.java
Created March 2, 2015 04:09
Maximum Subarray
public class Solution {
public int maxSubArray(int[] A) {
int maxSoFar = A[0];
int sumSoFar = A[0];
for (int i = 1; i < A.length; i++){
sumSoFar = sumSoFar + A[i];
sumSoFar = Math.max(sumSoFar, A[i]);
maxSoFar = Math.max(sumSoFar, maxSoFar);
}
return maxSoFar;
@dmnugent80
dmnugent80 / MaxValidParentheses.java
Created March 2, 2015 04:34
Max Valid Parentheses
public class Solution {
public int longestValidParentheses(String s) {
Stack<Integer> stk = new Stack<Integer>();
int left = -1;
int maxCount = 0;
for (int i = 0; i < s.length(); i++){
if (s.charAt(i) == '('){
stk.push(i);
}
else{
@dmnugent80
dmnugent80 / ArrangeLargestNumber.java
Created March 2, 2015 05:31
Arrange Largest Number into String
public class Solution {
public String largestNumber(int[] num) {
String[] arr = new String[num.length];
for (int i = 0; i < num.length; i++){
arr[i] = Integer.toString(num[i]);
}
Comparator<String> comp = new Comparator<String>(){
@dmnugent80
dmnugent80 / ContiguousSequenceSum.java
Created March 4, 2015 20:43
Given a sequence of positive integers A and an integer T, return whether there is a continuous sequence of A that sums up to exactly T
/*
Question: Given a sequence of positive integers A and an integer T, return whether there is a continuous sequence of A that sums up to exactly T
*/
public class SequenceSum
{
public static void main(String[] args)
{
@dmnugent80
dmnugent80 / StringMatchWithStars.java
Created March 8, 2015 18:17
String Match with Stars
//This is the brute force implementation
import java.util.HashSet;
public class MatchesWithStars
{
public static void main(String[] args)
{
HashSet<String> words = new HashSet<String>();
words.add("hello");
@dmnugent80
dmnugent80 / MinUniqueCharactersString.java
Last active August 29, 2015 14:16
Min Unique Characters in String
import java.util.HashSet;
import java.util.HashMap;
public class MinUnique
{
public static void main(String[] args)
{
String str = "cabbcbcbbccaa";
HashSet<Character> set = new HashSet<Character>();
set.add('a');