**girlcool專欄,稍加整理
氣泡排序
void bubble_sort(int *array, int len)
} }
}
插入排序
void insert_sort(int *array, int len) //
array[j] = tmp; // 將當前i放到插入位置j處,此輪插入完畢
break; //
} }
} }
選擇排序
void select_sort(int *array, int len)
} int tmp = array[index]; // 將未排序的最大值放到右端開頭
array[index] = array[len-i];
array[len-i] = tmp;
} }
快速排序
int partition( int* array, int start, int end)
std:: swap(array[l], array[r]); // 將r值與左側l值交換
while(l < r && key >= array[l])
std:: swap(array[l], array[r]);
} return l;
}
垃圾收集演算法
首先標記出所有需要 的物件,在標記完成後統一 所有被標記的物件 將可用記憶體按容量劃分為大小相等的兩塊,每次只使用其中的一塊。當這一塊的記憶體用完了,就將還存活著的物件複製到另外一塊上面,然後再把已使用過的記憶體空間一次清理掉。這樣使得每次都是對整個半區進行記憶體 記憶體分配時也就不用考慮記憶體碎片...
AI演算法收集
演算法名稱 演算法簡介 包含用途 用法 引數含義等 演算法類別 監督學習,非監督學習,強化學習 演算法 公共或自研 領域 face recognition 最簡潔的人臉識別庫,可以使用python和命令列工具提取 識別 操作人臉。基於業內領先的c 開源庫 dlib中的深度學習模型。非監督學習 公共計...
垃圾收集演算法
一.標記 清除演算法 分為 標記 和 清除 兩個階段 方案 1.標記所有需要 的物件 2.統一 被標記的物件 缺點 1.效率問題,標記 和 清除 效率都不高 2.空間問題,被 清除 後會產生大量的不連續的記憶體碎片 當大物件找不到足夠的連續空間,就得提前gc 二.複製演算法 方案 將記憶體分為兩塊,...