原创 java的>>和>>>右移運算符講解
可以先到這裏瞭解下計算機的基礎知識:原碼, 反碼, 補碼 詳解 計算機在運算的過程中採用補碼,符號位和補碼的出現使計算機可以不用減法計算。 ^_^ 1. 對於非負數,這兩個運算符的作用相同,將原數轉換成二進制數後,右移得到結果。
原创 二叉排序樹
/* 二叉排序樹,這裏例子的結點只給出關鍵字 key 插入過程相當於動態排序,可以有折半搜索和線性搜索的性質 最差情況是導致線性搜索,例如下面的例子都是右子樹 改進可以用平衡二叉樹或稱AVL樹或稱紅黑樹,從而壓縮樹深度,越接近折
原创 排序算法
#include<iostream> using namespace std; void out(int *arr,int len) { for(int i=0; i<len; i++) { printf("%d ",arr[i
原创 折半查找
/** 折半查找:要求表順序存儲和元素關鍵字有序排列,適用於表不易變動且需頻繁查找的情況。 查找過程可以用一棵二叉樹表示 實質是根據現有條件,不同的思路來剪枝,最終的效果是訪問的事物少了 */ #include<iostrea
原创 js拖拽效果
//實現了拖拽功能 //$(selector).swipe({ // swipeHorizontal: true, 可橫向拖動 // swipeVertical: true 可縱向拖動 // swipe
原创 http請求響應
1. 大致過程如下: a.輸入域名 b.查找域名對應的IP地址 c.瀏覽器想WEB服務器發送一個http請求 d.服務器處理請求,然後返回一個響應 e.瀏覽器處理響應,並顯示出最終效果2. 三次握手建立連接:
原创 IT技術的學習方法
說到底需要花時間精力投入進去,需要一點思考的興趣。 入門時拿一本書或一套視頻來照着練習玩就可以了,然後就可以拿個小項目來實戰了。在實戰的過程中來繼續鞏固深入,中間在查找資料的過程中,首選是官方技術文檔,最後纔是別人總結的博客。做完一個項目
原创 鏈棧
/** 頭結點:如果沒有頭結點那麼插入和刪除就會多一種情況要處理。 //這裏如果沒有頭結點,當root開始爲空,導致新建第一個結點找不到。 */ #include<iostream> using namespace std; str
原创 瀏覽器盒模型
1.爲什麼需要盒模型?每個html標籤類似一個盒子,有content,margin,padding,border等屬性。程序編寫的一個要點是控制變化和不變的部分,若是變化部分則可以將其抽離出來,以免影響不變的部分;若是不變的部分則可以將其
原创 js new操作符
new操作符創建一個對象,大致會執行幾個步驟:1. 創建一個空對象2. 將函數的prototype賦值給空對象的__proto__屬性3.最後將構造函數的this指針指向新創建的空對象,並執行該函數,最後返回創建的對象 點贊
原创 js數據類型
記下:現在的ECMAScript定義了7種數據類型: 6種原始數據類型: Boolean Null Undefined Number String
原创 鏈隊列
/** 頭結點:如果沒有頭結點那麼插入和刪除就會多一種情況要處理。 //這裏如果沒有頭結點,當root開始爲空,導致新建第一個結點找不到。 */ #include<iostream> using namespace std; str
原创 瀏覽器的渲染過程
1. 瀏覽器是‘自上而下’解析html文檔的,並且一邊解析一邊渲染。 構建DOM樹 -> 構建render樹 -> 佈局render樹 -> 繪製render樹渲染引擎沒等完全構建完DOM樹就開始構建佈局繪製render樹,即解析一
原创 js 閉包
1. 閉包的形成 閉包在代碼運行後,函數和它的外部作用域的變量一起構成的組合,存在於內存中。2. 閉包的用途 a.模擬私有方法(控制程序中不易變化的部分)3. 一個常見錯誤:在循環中創建閉包,解決方法 a. 使用匿名閉包
原创 瀏覽器多個標籤頁之間的通信
1.localStorage在添加刪除修改時會觸發一個storage事件,通過在另一個標籤頁監聽storage事件,就可以得到localStorage存儲的值,實現不同頁面之間的通信。2.使用cookie,將要傳遞的信息存儲在cookie