算法
晨识草
同样都是碳
展开
-
插入算法
插入算法相当于每次从桌面上抽一张扑克牌然后插入到手上已经排好顺序的牌中由于前面的数字都已经排序好了,所以每次判断完以后将前面比较大的数字往后移动一位即可,最终在空缺的位置不上key源代码:// 插入排序算法// 插入的那个数前面的所有数字都已经排序好#include<iostream>using namespace std;int main() { int n; int arr[10原创 2016-07-03 10:15:50 · 1065 阅读 · 0 评论 -
分治算法
排序的分治算法分治的思想在于: 将原问题分解为几个规模较小但类似于原问题的子问题, 递归的求解这些子问题,然后再合并这些子问题的解法建立原问题的解// 分治算法// 输入为// 5// 3 1 2 4 5// 0 4// 输出为// 1 2 3 4 5#include<iostream>using namespace std;#define MAX 1000int arr[M原创 2016-07-03 22:24:46 · 342 阅读 · 0 评论 -
二分查找 插值查找
二分查找mid, min, max, 每次将target(即要查找的数)与中间位置进行比较,如果刚好等于直接找到,如果大于,往中间位置的右边找,如果小于,往中间位置的左边找 递归// attention: the array must be sort// 查找之前数组已经排好顺序#include <iostream>#include <vector>using namespace std原创 2016-12-13 17:31:45 · 884 阅读 · 0 评论 -
snakeShape 蛇形数组
在师兄的督促下实现的蛇性数组,用了最简单的办法,最开始还怀疑能不能实现,结果还真的可以.// snakeshape.cpp// input: n#include<iostream>using namespace std;int main() { int count = 0; int n; cout << "please enter the matrix size you want原创 2016-05-08 13:45:28 · 669 阅读 · 0 评论 -
归并排序
1.归并排序算法归并排序,用到了分治思想,实现的时候用到递归算法。将整个大的数组的排序不断地分为两个小的数组的排序然后进行合并。2.算法实现采用递归// created by YunaLin// 2017-09-14// mergeSort, using divide and conquer algorithm, resursion#include <iostream>using nam原创 2017-09-14 21:35:07 · 181 阅读 · 0 评论 -
DES算法设计
代码实现注:理解整个过程,实现简单#include <iostream>#include <bitset>#include <cstdlib>using namespace std;bitset<48> subkeys[16];// initial IP permutation table// notice: values in IP are from 1 to 64int IP[]原创 2017-10-13 14:19:28 · 325 阅读 · 0 评论