Skip to content

Commit b88fb4d

Browse files
Update Selection Sort to Swift 3
1 parent 7f627a2 commit b88fb4d

File tree

5 files changed

+13
-5
lines changed

5 files changed

+13
-5
lines changed

Selection Sort/README.markdown

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ As you can see, selection sort is an *in-place* sort because everything happens
5959
Here is an implementation of selection sort in Swift:
6060

6161
```swift
62-
func selectionSort(array: [Int]) -> [Int] {
62+
func selectionSort(_ array: [Int]) -> [Int] {
6363
guard array.count > 1 else { return array } // 1
6464

6565
var a = array // 2

Selection Sort/SelectionSort.playground/Contents.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
//: Playground - noun: a place where people can play
22

3-
func selectionSort<T>(array: [T], _ isOrderedBefore: (T, T) -> Bool) -> [T] {
3+
func selectionSort<T>(_ array: [T], _ isOrderedBefore: (T, T) -> Bool) -> [T] {
44
guard array.count > 1 else { return array }
55
var a = array
66
for x in 0 ..< a.count - 1 {

Selection Sort/SelectionSort.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
func selectionSort<T>(array: [T], _ isOrderedBefore: (T, T) -> Bool) -> [T] {
1+
func selectionSort<T>(_ array: [T], _ isOrderedBefore: (T, T) -> Bool) -> [T] {
22
guard array.count > 1 else { return array }
33

44
var a = array

Selection Sort/Tests/Tests.xcodeproj/project.pbxproj

+9-1
Original file line numberDiff line numberDiff line change
@@ -86,11 +86,12 @@
8686
isa = PBXProject;
8787
attributes = {
8888
LastSwiftUpdateCheck = 0720;
89-
LastUpgradeCheck = 0720;
89+
LastUpgradeCheck = 0800;
9090
ORGANIZATIONNAME = "Swift Algorithm Club";
9191
TargetAttributes = {
9292
7B2BBC7F1C779D720067B71D = {
9393
CreatedOnToolsVersion = 7.2;
94+
LastSwiftMigration = 0800;
9495
};
9596
};
9697
};
@@ -149,8 +150,10 @@
149150
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
150151
CLANG_WARN_EMPTY_BODY = YES;
151152
CLANG_WARN_ENUM_CONVERSION = YES;
153+
CLANG_WARN_INFINITE_RECURSION = YES;
152154
CLANG_WARN_INT_CONVERSION = YES;
153155
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
156+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
154157
CLANG_WARN_UNREACHABLE_CODE = YES;
155158
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
156159
CODE_SIGN_IDENTITY = "-";
@@ -193,8 +196,10 @@
193196
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
194197
CLANG_WARN_EMPTY_BODY = YES;
195198
CLANG_WARN_ENUM_CONVERSION = YES;
199+
CLANG_WARN_INFINITE_RECURSION = YES;
196200
CLANG_WARN_INT_CONVERSION = YES;
197201
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
202+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
198203
CLANG_WARN_UNREACHABLE_CODE = YES;
199204
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
200205
CODE_SIGN_IDENTITY = "-";
@@ -213,6 +218,7 @@
213218
MACOSX_DEPLOYMENT_TARGET = 10.11;
214219
MTL_ENABLE_DEBUG_INFO = NO;
215220
SDKROOT = macosx;
221+
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
216222
};
217223
name = Release;
218224
};
@@ -224,6 +230,7 @@
224230
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
225231
PRODUCT_BUNDLE_IDENTIFIER = swift.algorithm.club.Tests;
226232
PRODUCT_NAME = "$(TARGET_NAME)";
233+
SWIFT_VERSION = 3.0;
227234
};
228235
name = Debug;
229236
};
@@ -235,6 +242,7 @@
235242
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
236243
PRODUCT_BUNDLE_IDENTIFIER = swift.algorithm.club.Tests;
237244
PRODUCT_NAME = "$(TARGET_NAME)";
245+
SWIFT_VERSION = 3.0;
238246
};
239247
name = Release;
240248
};

Selection Sort/Tests/Tests.xcodeproj/xcshareddata/xcschemes/Tests.xcscheme

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "0720"
3+
LastUpgradeVersion = "0800"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

0 commit comments

Comments
 (0)