原创 如何“三行代碼”找到最終推薦人-筆記

用戶A推薦B,B推薦C,我們說C的最終推薦人是A,B的最終推薦人也是A,而A沒有最終推薦人,一般來說我們用**數據庫**來建立這種關係,在數據庫表中,我們可以記錄兩行數據,其中 actor_id表示用戶 id,referrer_i

原创 如何設計一個工業級的散列函數-筆記

何爲一個工業級散列表?工業級鏈表有哪些特性? 支持快速查找、刪除、插入操作; 內存佔用合理,不能浪費過多內存空間; 性能穩定,極端情況下,性能也不會退化到無法接受的情況。 如何實現這樣的散列表呢? 設計一個合理的散列函數;

原创 數據庫及表的修改和刪除

首先新建兩個數據庫,分別名爲test_01與mysql_shiyan,並在mysql_shiyan中建4個表(department,employee,project,table_1),向其中插入數據。 刪除數據庫 DROP DATAB

原创 SELECT語句學習

要學習SELECT語句,首先我們需要建立數據庫,在創建數據庫並插入數據和SQL約束中我們已經學習了數據庫的創建或直接下載,因此我們這裏直接跳過這個過程。假設我們已經下載了MySQL-04-01.sql 與MySQL-04-02.sql

原创 搭建一個簡單的成績管理系統數據庫

數據庫gradesystem分別有三張表分別用來記錄學生信息(student)、課程信息(course)、成績信息(mark)。 student包含3列:sid(主鍵)、sname、gender; course包含2列:cid(主鍵

原创 SQL約束

要學習SQL約束,首先我們需要建立數據庫,之前我們已經學習了數據庫的創建,因此我們這裏使用一種新的方法,下載github中的數據文件到本地文件夾並加載文件中數據: //下載 git clone https://github.com/H

原创 Ubuntu Linux在線安裝配置MySQl

安裝前檢查 首先,我們檢查Linux系統中是否已經安裝了MySQL,輸入命令嘗試打開MySQL服務: sudo service mysql start 輸入密碼後,再輸入以下命令查看MySQL服務的狀態: sudo service

原创 創建數據庫並插入數據

先用一下兩條命令打開MySQL服務並使用root登錄: sudo service mysql start mysql -uroot 首先創建一個名爲mysql_shiyan的數據庫: CREATE DATABASE mysql_sh

原创 一條SQL查詢語句是如何執行的?-筆記

MySQL基本架構示意圖如下,從圖中我們可以清楚地看到SQL語句在MySQL的各個功能模塊中的執行過程 MySQL可分爲Server層和存儲引擎層兩部分。 Server層包括連接器、查詢緩存、分析器、優化器、執行器等,涵蓋MySQL

原创 如何防止數據庫中的信息被“脫庫”-筆記

我們可通過hash算法對用戶密碼加密之後再存儲,不過最好選用較安全的加密算法,比如SHA(MD5據說已被破解),但僅僅這樣加密就行了嗎? 用戶信息“脫庫”後,黑客利用字典攻擊:維護一個常用密碼的字典表,將字典中每個密碼用hash算法計

原创 如何設計的一個工業級的散列函數-筆記

何爲一個工業級散列表?工業級鏈表有哪些特性? 支持快速查找、刪除、插入操作; 內存佔用合理,不能浪費過多內存空間; 性能穩定,極端情況下,性能也不會退化到無法接受的情況。 如何實現這樣的散列表呢? 設計一個合理的散列函數; 定義

原创 如何在有限的空間範圍內對日誌文件進行排序-筆記

現在假設我們有10個接口訪問日誌文件,每個日誌文件大小約300MB,每個文件裏的日誌都是按照時間戮從小到大排列。你希望將這10個較小的日誌文件,合併爲1個日誌文件,合併之後的日誌仍按照時間戮從小到大排列。如果處理上述任務的機器內存只有

原创 如何用快排在O(n)時間內查找第K的數-筆記

我們可利用快排分區的思想解決這個問題: 我們選擇數組a區間的最後一個元素a[n-1]作爲pivot,此時數組可分爲三個區間:a[0]~a[p-1],a[p],a[p+1]~a[n-1]。若K=p+1,則p爲所求。 若K>p+1,則按

原创 爲什麼插入排序比冒泡排序更受歡迎-筆記

我們先來看看冒泡排序代碼: // 冒泡排序,a 表示數組,n 表示數組大小 public void bubbleSort(int[] a, int n) { if(n<=1) return; for(int i=n-1;i>0;i-

原创 hh

<div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307"