Skip to content

Instantly share code, notes, and snippets.

View Bablzz's full-sized avatar
💭
Quality is remembered long after the price is forgotten (Sir Frederick Royce)

Maksim Sokolnikov Bablzz

💭
Quality is remembered long after the price is forgotten (Sir Frederick Royce)
View GitHub Profile
@Bablzz
Bablzz / merge_sort.go
Last active October 21, 2019 09:52
Merge sort
/*
best time O(n log2 n)
worst time O(n log2 n)
*/
package main
import (
"fmt"
)
@Bablzz
Bablzz / quicksort.rb
Last active October 21, 2019 09:57
quicksort in ruby
=begin
Worst time: O(n2) if choose bad pivot element
Approximate time: O(n log n)
=end
def quicksort array
if array.length < 2
array
else
pivot = array[rand(array.length)]
@Bablzz
Bablzz / bank.rb
Created October 21, 2019 10:34
Bank deposite
years = 5
a = 1000
def bank(a, years)
i = 0
while i != years
b = (a * 0.1) + a
a = b
i += 1
end
@Bablzz
Bablzz / countsort.rb
Last active October 21, 2019 14:21
Counting sort
=begin
O(n + k)
=end
def countSort arr
countArr = []
resultArr = Array.new(arr.length)
max = arr.max
@Bablzz
Bablzz / simple.py
Last active October 23, 2019 11:24
Check if digit is simple
def is_simple(digit):
for i in range(2, digit - 1):
if ((digit % i) == 0):
return False
else:
return True
print(is_simple(72)) # False
print(is_simple(73)) # True
@Bablzz
Bablzz / sieve.py
Last active October 30, 2019 07:28
Sieve of Eratosthenes
# O(n log(log n))
arr = list(range(0, 300))
def sieve(ar):
for i in ar:
if i > 1:
step = arr[i]
while (arr[i] + step) < len(arr):
@Bablzz
Bablzz / tower.py
Created November 20, 2019 11:52
Tower of Hanoi
def solve(n, a, b, c):
if n > 0:
solve(n - 1, a, c, b)
print('Move disk from ' + a + ' to disk ' + b)
solve(n - 1, c, b, a)
solve(3, '1', '2', '3')
@Bablzz
Bablzz / insertion_sort.rb
Created December 13, 2019 13:30
Insertion sort
# O(n^2)
def insertion_sort arr
i = 0
j = 0
for i in 1...(arr.length) do
key = arr[i]
j = i - 1
while j >= 0 and key < arr[j] do
arr[j + 1] = arr[j]
@Bablzz
Bablzz / fib_memo.rb
Last active December 13, 2019 13:32
Fibonacci with memoization
memo = Hash.new(0)
def fib_rec (number, memo)
if number == 0
return number
elsif (number == 1) || (number == 2)
return 1
end
if (memo.has_key?(number))
return memo[number]
@Bablzz
Bablzz / example.md
Last active March 26, 2020 07:32
Some reason do not build docker by Packer
  1. Packer change entrypoint. This is obscure if you are just trying packer. You can read this here

  2. Packer doesn't work with scratch/distroless images(and another without bash) If your docker image has no bash packer does not build your image. See here

  3. Packer has no some docker command like copy. See here