Skip to content

Instantly share code, notes, and snippets.

View masters3d's full-sized avatar

masters3d masters3d

  • Pacific North West
View GitHub Profile
@masters3d
masters3d / Queue.swift
Last active August 29, 2015 14:16 — forked from kareman/Queue.swift
//
// Queue.swift
// NTBSwift
//
// Created by Kåre Morstøl on 11/07/14.
//
// Using the "Two-Lock Concurrent Queue Algorithm" from http://www.cs.rochester.edu/research/synchronization/pseudocode/queues.html#tlq, without the locks.
// should be an inner class of Queue, but inner classes and generics crash the compiler, SourceKit (repeatedly) and occasionally XCode.
extension Array{
func indexInbound (index: Int) -> Bool{
if 0 <= index && index < count {
return true
} else {
return false
}
}
@masters3d
masters3d / gist:3a501529f26b6a797292
Created February 25, 2015 15:06
SubString using Int instead of StringIndex Type
extension String{
func substringFromIndexInt(indx:Int) -> String {
let index = advance(self.startIndex, indx)
return self.substringFromIndex(index)
}
func substringWithRangeInt(intRange:Range<Int>)->String{
let start = advance(self.startIndex,intRange.startIndex)
let end = advance(self.startIndex,intRange.endIndex)
return self.substringWithRange(start..<end)
@masters3d
masters3d / isPrime
Created February 20, 2015 05:52
isPrime
//http://stackoverflow.com/questions/5811151/why-do-we-check-upto-the-square-root-of-a-prime-number-to-determine-if-it-is-pri
func isPrime(n: Int) -> Bool {
if n < 2 {
return false // are not primes
}
var limit = Int(sqrt(Float(n)))
if limit < 2 {
return true // 2, 3 are primes
}
func pow(lhs:Int, rhs:Int)->Double{
return pow(Double(lhs),Double(rhs))
}
func pow(lhs:Double, rhs:Int)->Double{
return pow(lhs,Double(rhs))
}
@masters3d
masters3d / gist:797fb16172cc3494800c
Created February 19, 2015 06:08
Power in Swift
infix operator ** { associativity left precedence 160 }
func ** (num: Double, power: Double) -> Double{
return pow(num, power)
}
@masters3d
masters3d / gist:74ca6e214ce402507b7b
Created February 2, 2015 14:33
String stripCharSet()
extension String {
func stripCharSet(charSet:NSCharacterSet) -> String{
let tempstring:NSArray = self.componentsSeparatedByCharactersInSet(charSet)
let returnString = tempstring.componentsJoinedByString("")
return returnString
}
var stripWhiteSpace:String { get {
return stripCharSet(.whitespaceAndNewlineCharacterSet())
}}
func fizzbuzz(i: Int) -> String {
let result = (i % 3, i % 5)
switch result {
case (0, _):
return "Fizz"
case (_, 0):
return "Buzz"
case (0, 0):
return "FizzBuzz"
default:
@masters3d
masters3d / gist:cbb9160ace0a7dbfa981
Last active August 29, 2015 14:14
isEmptyOrWhiteSpace
extension String {
var isEmptyOrWhiteSpace:Bool { get {
return self.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet()).isEmpty
}}}
@masters3d
masters3d / gist:7427a1f7de4353f7bf71
Created January 20, 2015 07:13
problems compare
import json
import urllib2
pythonParsedList = json.load(urllib2.urlopen('https://raw.githubusercontent.com/exercism/xpython/master/config.json'))
swiftParsedList = json.load(urllib2.urlopen('https://raw.githubusercontent.com/exercism/xswift/master/config.json'))
haskellParsedList = json.load(urllib2.urlopen('https://raw.githubusercontent.com/exercism/xhaskell/master/config.json'))
csharpParsedList = json.load(urllib2.urlopen('https://raw.githubusercontent.com/exercism/xcsharp/master/config.json'))
#Python