前言 趁著Xcode10更新,第一時(shí)間下載并準(zhǔn)備開始踩坑。接下來直接列出筆者遇到的問題和解決過程。 1:適配iPhone X/XS/XR/XS Max 總的來說這個(gè)問題比較簡...
前言 趁著Xcode10更新,第一時(shí)間下載并準(zhǔn)備開始踩坑。接下來直接列出筆者遇到的問題和解決過程。 1:適配iPhone X/XS/XR/XS Max 總的來說這個(gè)問題比較簡...
iOS底層原理總結(jié) - 探尋OC對(duì)象的本質(zhì) 對(duì)小碼哥底層班視頻學(xué)習(xí)的總結(jié)與記錄。面試題部分,通過對(duì)面試題的分析探索問題的本質(zhì)內(nèi)容。 面試題:一個(gè)NSObject對(duì)象占用多少內(nèi)...
前言 樹是數(shù)據(jù)結(jié)構(gòu)中的重中之重,尤其以各類二叉樹為學(xué)習(xí)的難點(diǎn)。一直以來,對(duì)于樹的掌握都是模棱兩可的狀態(tài),現(xiàn)在希望通過寫一個(gè)關(guān)于二叉樹的專題系列。在學(xué)習(xí)與總結(jié)的同時(shí)更加深入的了...
ReactiveCocoa作用 在我們iOS開發(fā)過程中,當(dāng)某些事件響應(yīng)的時(shí)候,需要處理某些業(yè)務(wù)邏輯,這些事件都用不同的方式來處理。比如按鈕的點(diǎn)擊使用action,Scroll...
希爾排序 希爾排序,也稱遞減增量排序算法,是插入排序的一種更高效的改進(jìn)版本。但希爾排序是非穩(wěn)定排序算法。 希爾排序是基于插入排序的以下兩點(diǎn)性質(zhì)而提出改進(jìn)方法的: 插入排序在對(duì)...
插入排序 插入排序的代碼實(shí)現(xiàn)雖然沒有冒泡排序和選擇排序那么簡單粗暴,但它的原理應(yīng)該是最容易理解的了,因?yàn)橹灰蜻^撲克牌的人都應(yīng)該能夠秒懂。插入排序是一種最簡單直觀的排序算法,...
選擇排序 選擇排序是一種簡單直觀的排序算法,無論什么數(shù)據(jù)進(jìn)去都是 O(n2) 的時(shí)間復(fù)雜度。所以用到它的時(shí)候,數(shù)據(jù)規(guī)模越小越好。唯一的好處可能就是不占用額外的內(nèi)存空間了吧。 ...
快速排序 快速排序是由東尼·霍爾所發(fā)展的一種排序算法。在平均狀況下,排序 n 個(gè)項(xiàng)目要 Ο(nlogn) 次比較。在最壞狀況下則需要 Ο(n2) 次比較,但這種狀況并不常見。...
冒泡排序 冒泡排序(Bubble Sort)也是一種簡單直觀的排序算法。它重復(fù)地走訪過要排序的數(shù)列,一次比較兩個(gè)元素,如果他們的順序錯(cuò)誤就把他們交換過來。走訪數(shù)列的工作是重復(fù)...
1、Notifiaction響應(yīng)順序?擴(kuò)展問題:如何讓NSNotifiication的post處和observer處異步執(zhí)行? 對(duì)于同一個(gè)通知,如果注冊(cè)了多個(gè)觀察者,則多個(gè)觀...
Socket 基本概念 Socket 是對(duì) TCP/IP 協(xié)議族的一種封裝,是應(yīng)用層與TCP/IP協(xié)議族通信的中間軟件抽象層。從設(shè)計(jì)模式的角度看來,Socket其實(shí)就是一個(gè)門...
IP 協(xié)議簡介 IP 協(xié)議位于 TCP/IP 協(xié)議的第三層——網(wǎng)絡(luò)層。與傳輸層協(xié)議相比,網(wǎng)絡(luò)層的責(zé)任是提供點(diǎn)到點(diǎn)(hop by hop)的服務(wù),而傳輸層(TCP/UDP)則提...
UDP 簡介 UDP 是一個(gè)簡單的傳輸層協(xié)議。和 TCP 相比,UDP 有下面幾個(gè)顯著特性: UDP 缺乏可靠性。UDP 本身不提供確認(rèn),序列號(hào),超時(shí)重傳等機(jī)制。UDP 數(shù)據(jù)...
TCP 的特性 TCP 提供一種面向連接的、可靠的字節(jié)流服務(wù) 在一個(gè) TCP 連接中,僅有兩方進(jìn)行彼此通信。廣播和多播不能用于 TCP TCP 使用校驗(yàn)和,確認(rèn)和重傳機(jī)制來保...
HTTPS 基本過程 HTTPS 即 HTTP over TLS,是一種在加密信道進(jìn)行 HTTP 內(nèi)容傳輸?shù)膮f(xié)議。 TLS 的早期版本叫做 SSL。SSL 的 1.0, 2....