Skip to content

Commit f622eff

Browse files
committed
Use ReversedRandomAcces protocol directly instead of casting it into Array
1 parent e734bbc commit f622eff

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

Diff for: Sources/LinkedList.swift

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@ class LinkedList<T> {
99
}
1010

1111
init?(array: [T]) {
12-
let reversed = Array(array.reversed())
12+
let reversed = array.reversed()
1313
guard let first = array.first else {
1414
return nil
1515
}
1616

1717
var tailLinkedList: LinkedList?
1818

1919
for i in 0 ..< reversed.count - 1 {
20-
tailLinkedList = LinkedList(next: tailLinkedList, value: reversed[i])
20+
tailLinkedList = LinkedList(next: tailLinkedList, value: reversed.itemOnStartIndex(advancedBy: i))
2121
}
2222

2323
self.next = tailLinkedList
@@ -51,15 +51,15 @@ class DoublyLinkedList<T> {
5151
}
5252

5353
init?(array: [T]) {
54-
let reversed = Array(array.reversed())
54+
let reversed = array.reversed()
5555
guard let first = array.first else {
5656
return nil
5757
}
5858

5959
var tailDoublyLinkedList: DoublyLinkedList?
6060

6161
for i in 0 ..< reversed.count - 1 {
62-
let nextTail = DoublyLinkedList(next: tailDoublyLinkedList, value: reversed[i])
62+
let nextTail = DoublyLinkedList(next: tailDoublyLinkedList, value: reversed.itemOnStartIndex(advancedBy: i))
6363
tailDoublyLinkedList?.previous = nextTail
6464
tailDoublyLinkedList = nextTail
6565
}

0 commit comments

Comments
 (0)