Skip to content

Instantly share code, notes, and snippets.

@andreidbr
Created November 10, 2018 19:56
Show Gist options
  • Save andreidbr/e6e54fafbf6f347ea34b0d98406f54b0 to your computer and use it in GitHub Desktop.
Save andreidbr/e6e54fafbf6f347ea34b0d98406f54b0 to your computer and use it in GitHub Desktop.
package PortfolioTests;
import java.util.Arrays;
public class CodeWars {
public static void main(String[] args) {
Integer[] ar = {100, 5, 3, 99, 34, 63, 2};
int sum = 39;
// bubble(ar);
// findSum(ar, sum);
System.out.println(findSum(ar, sum));
}
public static void fib() {
for(int i=0;i<=30;i++){
System.out.print(fibbonaciIterative(i)+" ");
}
System.out.println();
for(int i=0;i<=30;i++){
System.out.print(fibbonaciRecursive(i)+" ");
}
}
static int fibbonaciIterative(int n) {
int a = 0, b = 1, c;
if (n == 0)
return a;
for (int i = 2; i <= n; i++)
{
c = a + b;
a = b;
b = c;
}
return b;
}
static int fibbonaciRecursive(int n) {
// if (n <= 1)
// return n;
// return fibbonaciRecursive(n-1) + fibbonaciRecursive(n-2);
return (n <= 1 ? n : fibbonaciRecursive(n-1) + fibbonaciRecursive(n-2));
}
static void isPrime(int num) {
if (num <= 1) {
System.out.println(num + " is not prime");
} else {
boolean prime = true;
for (int i = 2; i*i <= num; i++) {
if (num % i == 0) {
prime = false;
}
}
if (prime) {
System.out.println(num + " is prime");
} else {
System.out.println(num + " is not prime");
}
}
}
static void isIntPalindrome(int num) {
int revNum = 0;
int workingNum = num;
while (num > 0) {
revNum = revNum * 10 + num % 10;
num = num / 10;
}
if (workingNum == revNum) {
System.out.println(workingNum + " is palindrome");
} else {
System.out.println(workingNum + " is not palindrome");
}
}
static void isStringPalindrome(String s) {
String tempS = s;
String newS = "";
// StringBuffer sb = new StringBuffer(tempS);
// newS = sb.reverse().toString();
//or if they're cheeky
for (int i = s.length() - 1; i >= 0; i--) {
newS = newS + tempS.charAt(i);
}
if (s.equalsIgnoreCase(newS)) {
System.out.println(s + " is palindrome");
} else {
System.out.println(s + " is not palindrome");
}
}
static long factorial(int num) {
//use long but be careful as with 20! you exceed long range
//fancy ternary operator
return (num <= 1) ? 1 : num * factorial(num - 1);
// if (num <= 1) {
// return 1;
// } else {
// return num * factorial(num -1);
// }
// for loop
// int fact = 1;
// for (int i = 1; i <= num; i++) {
// fact = fact * i;
// }
// System.out.println(fact);
}
static int[] bubble(int[] arr) {
int temp;
for (int i = 0; i < arr.length; i++) {
for (int j = 1; j < (arr.length - i); j++) {
if (arr[j - 1] > arr[j]) {
temp = arr[j - 1];
arr[j - 1] = arr[j];
arr[j] = temp;
}
System.out.println("Iteration " + i + " " + Arrays.toString(arr));
}
}
return arr;
}
static String findSum(Integer[] arr, int sum) {
// brute force
for (int i = 0; i < arr.length; i++) {
for (int j = 1; j < arr.length; j++) {
if (arr[i]+arr[j] == sum) {
String found = "Found " + arr[i]+ " " + arr[j];
System.out.println(found);
// return found;
}
}
}
for (int i = 0; i < arr.length; i++) {
int rezultat = sum - arr[i];
if (Arrays.asList(arr).contains(rezultat)) {
String found = "Gasit de data asta: " + arr[i] + " " + rezultat;
return found;
}
}
return "";
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment