Skip to content

Instantly share code, notes, and snippets.

View vrat28's full-sized avatar
💭
do { programming() } while !success

Varun vrat28

💭
do { programming() } while !success
View GitHub Profile
var a = 1
var b = 2
print("Before swap: \(a) , \(b)")
// swapping
let temp = a
a = b
b = temp
int x, y;
printf("before swapping numbers: %d %d\n",x,y);
/*swapping*/
x = x + y - (y = x)
printf("before swapping numbers: %d %d\n",x,y);
x = 5
y = 10
x, y = y, x
print("x =", x)
print("y =", y)
func swap<T:Comparable>(_ a:inout T, _ b :inout T) {
(a,b) = (b,a)
}
var a = 1
var b = 2
swap(&a,&b)
print(a)
@vrat28
vrat28 / balanced_paranthesis.swift
Last active June 11, 2020 13:12
Matching balanced brackets using stacks
class BalancedBrackets {
func checkBalancedBrackets(string: String) -> Bool {
var stack = [Character]()
let mapBrackets : [Character: Character] = ["}":"{", ")":"(", "]":"["]
let openingBrackets = "([{"
for char in string {
if openingBrackets.contains(char){
stack.append(char)
}
else {
@vrat28
vrat28 / majority_element_with_map.swift
Created June 13, 2020 02:50
Find majority element in the array
func findMajorityElement(_ input:[Int]) -> Int{
var frequencyMap = [Int:Int]()
for num in input {
if let count = frequencyMap[num] {
frequencyMap[num] = count + 1
}
else {
frequencyMap[num] = 1
}
}
@vrat28
vrat28 / Find_Majority_Element_Boyer_Moore.swift
Created June 13, 2020 03:14
Find majority element using Boyer-Moore voting algo
// Using Boyer-Moore voting algorithm
func findMajorityElement(_ input:[Int]) -> Int {
var maxElement = 0
var count = 0
// Iteration 1 : find max frequency element
for num in input {
if num == maxElement {
count += 1
}
var stack = [Character]()
let mapBrackets : [Character: Character] = ["}":"{", ")":"(", "]":"["]
let openingBrackets = "([{"
for char in string {
if openingBrackets.contains(char){
stack.append(char)
}
}
if let last = stack.last, last == mapBrackets[char] {
stack.popLast()
}