![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
欧阳渣儿
这个作者很懒,什么都没留下…
展开
-
冒泡排序、选择排序、插入排序
1. 冒泡排序循环n次,每次在array.length中相邻两个做比较,较小的数渐渐浮到前面。 public static int[] bubbleSort(int[] array) { if(array.length > 0) { for(int i=0; i<array.length; i++) { for(int j=0; j<array.length-i-1;原创 2021-05-26 22:22:10 · 73 阅读 · 0 评论 -
模式匹配算法Leedcode-strStr()
模式匹配算法实现 strStr() 函数。给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。题目链接:https://leetcode-cn.com/classic/problems/implement-strstr/description/参考《大话数据结构》第五章KMP算法就是为了不必要的回溯不发生。一、朴素的模式匹配算法最好情况:每次都是首字母不匹配,O(原创 2021-05-08 21:37:29 · 72 阅读 · 0 评论 -
斐波那契数列
(1)非递归int main(){ int n; cin >> n; int sum = 1; int b = 1; int t; if (n == 1 || n == 2) cout<< 1; if (n > 2) { for (int i = 3; i <= n; i++) { t = sum; sum = (...原创 2020-03-07 19:54:33 · 77 阅读 · 0 评论 -
归并排序
归并排序步骤:1.分解2.解决3.合并 #include<iostream>using namespace std;void Merge(int* a, int p, int q, int r){ int n1 = q - p + 1; int n2 = r - q; int* L = new int[n1 + 1]; int* R = new int[n2 ...原创 2019-12-29 10:09:27 · 84 阅读 · 0 评论 -
动态规划
动态规划-----找零钱问题1.写出递归式2.建表查表避免重复计算 #include<algorithm>#include<iostream>#include<cmath>using namespace std;int makeChange(int values[], int valuesKinds, int money, int coinsU...原创 2019-12-08 16:13:58 · 115 阅读 · 0 评论 -
快速排序(挖坑法)
快速排序(挖坑法)#include<iostream>using namespace std;void swap(int &a, int &b){ int temp = a; a = b; b = temp;}void quicksort(int a[],int left, int right){ if (left > right) re...原创 2019-12-07 17:23:14 · 176 阅读 · 1 评论 -
快速排序
快速排序排到最后当基数在左边时,用a[right]与基数交换;(因为a[rihgt]<a[left])当基数在右边时,用a[left]与基数交换;原创 2019-12-07 17:00:22 · 86 阅读 · 0 评论