Skip to content

Instantly share code, notes, and snippets.

View sinanduman's full-sized avatar

Sinan Duman sinanduman

View GitHub Profile
@sinanduman
sinanduman / LookAndSay.scala
Created February 14, 2017 04:35
Scala solution for the algorithm explained in https://en.wikipedia.org/wiki/Look-and-say_sequence. But in this soluition, letter comes first, count comes after that.
package hackoranko
object LookAndSay {
def LookAndSay(start: String, n: Int): String = {
var first = start(0)
var tmpStart = new StringBuilder(start(0).toString() + "1")
for (t <- start.tail) {
@sinanduman
sinanduman / Score.java
Created March 21, 2017 04:51
Amazon find symbols score and total sum. X = multiply by 2 with previous score. + = adding previous 2 scores. Z = ignoring last score, as if it isn't thrown never.
package algo;
public class Score {
public static void main(String[] args) {
String[] nums = { "5", "-2", "4", "Z", "X", "9", "+", "+" }; // 27
// String[] nums = { "1", "2", "4", "Z"}; // 3
System.out.println(findScore(nums, nums.length));
}
@sinanduman
sinanduman / LinkedListReverse.java
Created September 4, 2019 06:52
Singly LinkedList reverse algorithm using iterative and recursive methods.
package algo;
public class LinkedListReverse {
public static void main(String[] args) throws Exception {
Node<Integer> node = new Node(1);
node.next = new Node(2);
node.next.next = new Node(3);
node.next.next.next = new Node(4);
node.next.next.next.next = new Node(5);
@sinanduman
sinanduman / Pascal.java
Created October 10, 2021 18:58
Pascal Triangle
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Pascal {
public static void main(String[] args) {
int numberOfRows = 8;
String blank = " ";
List<List<Integer>> listOfList = new ArrayList<>();