![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
南风~古草
贵州大学软件工程专业大三,学子彦秉成。立志于笃行求是,践行人生信仰的奋斗者!
展开
-
01背包问题空间复杂度改进(动态规划法,C语言)
#include<stdio.h>int Max(int n1,int n2){ if(n1>n2){ return n1; } return n2;}int main(){ int n=6,c=12;/*6个物品,背包容量为12*/ int value[]={0,6,3,5,4,3,6};/*物品价值,从下标1开始*/ int weight[]={0,4,6,2,2,5,3};/*物品重量,从下表1开始*/ .原创 2021-10-23 21:19:45 · 435 阅读 · 0 评论 -
01背包问题(动态规划法,C语言)
#include<stdio.h>int Max(int n1,int n2){ if(n1>n2){ return n1; } return n2;}int main(){ int n=6,c=12;/*6个物品,背包容量为12*/ int value[]={0,6,3,5,4,3,6};/*物品价值,从下标1开始*/ int weight[]={0,4,6,2,2,5,3};/*物品重量,从下表1开始*/ .原创 2021-10-23 20:28:13 · 3743 阅读 · 0 评论 -
C语言实现利用栈解决四色定理着色问题
#include<stdio.h>#include<stdlib.h>struct stack{ int *data; int top; int maxSize;};struct stack *createStack(int maxsize){ struct stack *s; s=malloc(sizeof(struct stack)); s->data=malloc(sizeof(int)*maxsize); .原创 2021-10-12 10:19:44 · 838 阅读 · 0 评论 -
C语言实现暴力BF算法求第一个匹配子串下标
#include<stdio.h>int length(char *str){ int i=0; while(str[i]!='\0'){ i++; } return i;}int BF(char *txt,char *str){/*返回第一个匹配子串的位置下标*/ int m=length(txt); int n=length(str); for(int i=0;i<=m-n;i++){ in.原创 2021-10-09 22:58:56 · 113 阅读 · 0 评论 -
最长递增子序列(C语言)
#include<stdio.h>int biger(int n1,int n2){ if(n1>n2){ return n1; } return n2;}int get_height(int arr[],int n){ if(n==1){ return 1; } int b[n]; for(int i=0;i<n;i++){ b[i]=1; } int r.原创 2021-10-03 08:33:06 · 1442 阅读 · 0 评论 -
n皇后问题(C语言)
#include<stdio.h>int n,count;/*全局变量默认为0*/int collision(int a[],int row,int column){/*检查是否冲突*/ for(int i=1;i<=row;i++){ if(a[i]==column){ return 0; }else if(i+a[i]==row+column){ return 0; }else.原创 2021-10-17 18:20:57 · 231 阅读 · 0 评论 -
KMP算法改进(C语言)
#include<stdio.h>int length(char *str){ int i=0; while(str[i]!='\0'){ i++; } return i;}void getNextval(char *str,int nextval[]){ int i=0,j=-1; nextval[0]=-1; while(i<length(str)){ if(j==-1||str[i]==s.原创 2021-10-14 22:09:06 · 184 阅读 · 0 评论 -
KMP算法(C语言)
#include<stdio.h>int length(char *str){ int i=0; while(str[i]!='\0'){ i++; } return i;}void getNext(char *str,int next[]){ int i=0,j=-1; next[0]=-1; while(i<length(str)-1){ if(j==-1||str[i]==str[j]){.原创 2021-10-14 21:43:34 · 78 阅读 · 0 评论