Skip to content

Instantly share code, notes, and snippets.

View arunma's full-sized avatar

Argon arunma

  • Singapore
View GitHub Profile
@arunma
arunma / SeleniumUtils.java
Created July 30, 2012 13:29
Selenium Utils
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.collections.ListUtils;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.openqa.selenium.By;
@arunma
arunma / QuickSort.java
Created August 15, 2012 11:26
QuickSort
package me.rerun;
import java.util.Arrays;
public class QuickSort {
public static void quickSort (Comparable comparableArray[], int lowIndex, int highIndex){
//at least one item must exist in the array
if (lowIndex>=highIndex){
@arunma
arunma / Kadane.java
Created August 29, 2012 16:29
Kadane's maximum sum subarray algorithm
/*Note : This code fails for inputs such as int[] intArr={3, -1, -1, -1, -1, -1, 2, 0, 0, 0 };
A modified version of this program is available at gist: https://gist.github.com/gists/3624849
This program is retained for archival purposes.
*/
public class Kadane {
public static void main(String[] args) {
int[] intArr = {-1, 3, -5, 4, 6, -1, 2, -7, 13, -3};
findMaxSubArray(intArr);
@arunma
arunma / Kadane.java
Created September 4, 2012 18:44
Maximum sum Subarray problem - Kadane's algorithm - Java
package me.rerun;
public class Kadane {
public static void main(String[] args) {
int[] intArr={3, -1, -1, -1, -1, -1, 2, 0, 0, 0 };
//int[] intArr = {-1, 3, -5, 4, 6, -1, 2, -7, 13, -3};
//int[] intArr={-6,-2,-3,-4,-1,-5,-5};
findMaxSubArray(intArr);
}
@arunma
arunma / ExecutorInvokeAll.java
Created September 15, 2012 18:55
Thread Pool Executor using invokeAll()
package me.rerun.incubator;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.atomic.AtomicInteger;
@arunma
arunma / ExecutorSubmit.java
Created September 15, 2012 18:58
Thread Pool Executor using submit()
package me.rerun.incubator;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import java.util.concurrent.atomic.AtomicInteger;
@arunma
arunma / RunnableAdapter.java
Created September 15, 2012 19:20
FutureTask Runnable Adapter
static final class RunnableAdapter<T> implements Callable<T> {
final Runnable task;
final T result;
RunnableAdapter(Runnable task, T result) {
this.task = task;
this.result = result;
}
@arunma
arunma / InfixToValue.groovy
Created October 14, 2012 16:04
Infix expression evaluator - multiple digits
/**
* Only basic arithmetic operators are supported. However, could easily be
* extended to support any binary operators
*
* This program is not an infix to postfix converter. However, this program does the following
*
* 1) Evaluates a non-parenthesized infix expression and drives it to a final value
* 2) Does not support parentheses
* 3) Supports multiple digits as operands
* 4) Empty space allowed
@arunma
arunma / InfixToValueParenthesis.groovy
Created October 16, 2012 17:30
Infix expression evaluator with parentheses - multiple digits
/**
* Only basic arithmetic operators are supported. However, could easily be
* extended to support any binary operators
*
* This program is not an infix to postfix converter. However, this program does the following
*
* 1) Evaluates a parenthesized or non-parenthesized infix expression and drives it to a final value
* 2) Supports parentheses
* 3) Supports multiple digits as operands
* 4) Empty space allowed
@arunma
arunma / Constants.java
Created October 17, 2012 07:38
Selenium Utils - support Constants
public interface Constants {
public static final String BANNER = "****************************************************************************************";
public static final String VALIDATION_REPORT = "************************************** VALIDATION REPORT **********************************";
public static final String ENABLED="enabled";
public static final String DISABLED="disabled";
public static final String VISIBLE="visible";
public static final String INVISIBLE="hidden";
public static final String REPORTS_FOLDER="reports";