讨论/算法和数据结构/用 Swift 刷题如何避免到处都是感叹号?/
用 Swift 刷题如何避免到处都是感叹号?

随便刷个链表题就这样了,太坑了,有没有可以避免的方案?如328题:

class Solution {
  func oddEvenList(_ head: ListNode?) -> ListNode? {
    if head == nil || head!.next == nil {
      return head
    }
    var odd = head
    var evenHead = odd!.next
    var even = evenHead
    while odd!.next != nil && even!.next != nil {
      odd!.next = even!.next
      odd = odd!.next
      even!.next = odd!.next
      even = even!.next
    }
    
    odd!.next = evenHead
    return head
  }
}
展开讨论
听奏发起于 2019-08-20
  • 第一,optional这几乎是现代编程语言必备的一个特性了,虽然我一开始也不适应,但真正理解了这个特性的必要性之后,从心理上就会开始接受
  • 第二,在写法上,如果觉得丑陋的话,就多用 guard/if let 等语句前置 wrap,给optional已确定的类型,这样会有所改善

所以,慢慢适应,都是被习惯了的🤷‍♂️

1
展开全部 2 讨论