自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 模拟退火算法求解TSP问题(python实现)

前文 http://t.csdnimg.cn/Q4l9X 使用局部搜索求解了一个TSP问题,如果打印信息就会发现,尽管迭代了10000次,接受新解的次数只有1因为只有在产生更优解时才接受新解,这样就容易陷入局部最优为了能够跳出局部最优解,模拟退火是一种比较有用的方法,简而言之就是通过一定的概率接受较差的解,这个概率通常用这个公式描述:模拟退火方法结论更好?用模拟退火(SA)和邻域搜索(LS)分别迭代100000次,发现模拟退火的结果甚至更遭SA:LS:原因是初始解太优秀了,现在加上

2024-01-21 16:01:49 437

原创 局部搜索算法(Local Search)求解TSP问题 python实现

启发式算法、邻域搜索、python

2024-01-16 11:18:43 1081

原创 遗传算法(GA)求解TSP问题(golang实现)

本人水平有效,文中可能存在一些错误个人觉得标准的遗传算法求解TSP/VRP问题的效率一般,而且编码过程非常痛苦,尤其是交叉的部分,因为TSP要求基因点是不能重复的,即不能重复访问同一个点,因此交叉的过程需要考虑消除重复的节点。自适应大邻域算法(ALNS)求解TSP问题,golang实现效率还不错。

2024-01-04 17:05:28 1404

原创 自适应大邻域算法(ALNS)求解TSP问题,golang实现

自适应大邻域搜索算法(Adaptive Large Neighborhood Search , ALNS)

2023-12-28 11:17:55 664

原创 【k8s学习笔记】wordpress + mariadb + mariadb-operator in kubernetes

通过helm在集群中部署mariadb-operator,并部署wordpress+mariadb应用

2023-04-13 11:19:17 395 1

原创 使用模拟退火算法求解TSP问题(python实现)

使用模拟退火算法求解TSP问题案例和代码参考的是:华中科技大学创新团队WESharp新生培训系列讲座,主讲人:周航模拟退火(Simulated annealing)是一种通用概率算法,用来在一定时间内寻找在一个很大搜寻空间内的近似最优解。简介模拟退火来自冶金学的专有名词退火。退火是将材料加热后再经特定速率冷却,目的是增大晶粒的体积,并且减少晶格中的缺陷。材料中的原子原来会停留在使内能有局部最小值的位置,加热使能量变大,原子会离开原来位置,而随机在其他位置中移动。退火冷却时速度较慢,使得原子

2020-12-09 11:19:50 4480 2

原创 PAT乙级 1066

//1066#include <iostream>using namespace std;int main(){ int a, b, l, h, s; scanf("%d %d %d %d %d",&a, &b, &l, &h, &s); for(int i = 0; i < a; i++){ for(int j = 0; j < b; j++){ int temp; scanf("%d", &temp);

2020-08-24 09:08:08 112

原创 PAT乙级1065

//1065#include <iostream>#include <algorithm>#include <vector>using namespace std;int main(){ int n,m,cnt=0; int dog[100000]; vector<int> v; cin>>n; for(int i=0;i<n;i++){ int a,b; cin>>a>>b; do..

2020-08-15 13:13:56 92

原创 PAT乙级1059

//1059#include <iostream>#include <cmath>using namespace std;bool isprime(int a){ for(int i=2;i<=sqrt(double(a));i++) if(a%i==0) return false; return true;}int main(){ int id[10005][2]={0}; int n,k; cin>>n; for(int i..

2020-08-13 15:45:25 79

原创 PAT乙级1057

//1057#include <iostream>#include <cctype>#include <cmath>using namespace std;int main(){ string s; getline(cin,s); int sum=0; for(int i=0;i<s.length();i++){ if(isalpha(s[i])){ if(islower(s[i])) sum=sum+s[i]-'a'+1; .

2020-08-13 13:49:53 86

原创 PAT乙级1056

//1056#include <iostream>using namespace std;int main(){ int n,temp,sum=0; cin>>n; for(int i=0;i<n;i++){ cin>>temp; sum+=temp*11*(n-1); } cout<<sum; return 0;}

2020-08-13 13:40:40 85

原创 PAT乙级1054

//1054#include <iostream>#include <cstdio>#include <string.h>using namespace std;int main(){ int n,cnt=0; double sum=0.0,temp; cin>>n; char a[50]; char b[50]; for(int i=0;i<n;i++){ scanf("%s",&a); sscanf(a,"%..

2020-08-10 15:16:13 106

原创 PAT乙级1053

//1053#include <iostream>using namespace std;int main(){ int n,d,cnt=0; double e,used; cin>>n>>e>>d; int may=0,must=0; for(int i=0;i<n;i++){ int k;cin>>k; for(int j=0;j<k;j++){ cin>>used; if(use..

2020-08-10 14:05:51 92

原创 PAT 乙级1051

//1051#include <iostream>#include <cmath>using namespace std;int main(){ double A,B,r1,p1,r2,p2; cin>>r1>>p1>>r2>>p2; A=r1*r2*cos(p1)*cos(p2)-r1*r2*sin(p1)*sin(p2); B=r1*r2*cos(p1)*sin(p2)+r1*r2*sin(p1)*cos(p2);.

2020-08-09 06:15:28 124

原创 PAT乙级1049

//1049#include <iostream>using namespace std;int main(){ int n; scanf("%d",&n); float sum=0.0; for(int i=0;i<n;i++){ float t; cin>>t; sum+=(i+1)*(n-i)*t; } printf("%.2lf",sum); return 0;}好烦,每题都有错误并且找不出来(哭)...

2020-08-08 09:05:13 180 1

原创 PAT乙级1047

//1047#include <iostream>using namespace std;int main(){ int n,team; cin>>n; int a[10001]={0}; for(int i=0;i<n;i++){ string s; int score; cin>>s>>score; a[stoi(s)]+=score; } int max=0; for(int i=0;i<10001;i..

2020-08-07 16:32:42 91

原创 PAT乙级 1044

#include <iostream>#include <string>using namespace std;string a[13]={"tret","jan","feb","mar","apr","may","jun","jly","aug","sep","oct","nov","dec"};string b[13]={"###","tam","hel","maa","huh","tou","kes","hei","elo","syy","lok","mer","j..

2020-08-07 14:52:43 123

原创 PAT 1001

#include <iostream>#include <vector>using namespace std;int main(){ int a,b; cin>>a>>b; vector<char> v; int j=0; string s=to_string(a+b); int len=s.length(); for(int i=len-1;i>=0;i--){ v.push_back(s[i]); j++;.

2020-07-06 08:04:33 88

原创 PAT 乙级 1039

//1039#include <iostream>using namespace std;int main(){ string a,b; cin>>a>>b; int zhu[128]={0}; for(int i=0;i<a.length();i++){ zhu[a[i]]++; } int k=0; for(int i=0;i<b.length();i++){ if(zhu[b[i]]>0) zhu[b[i]]-..

2020-06-17 13:07:54 86

原创 PAT乙级 1038

//1038#include <iostream>using namespace std;int main(){ int num,check; cin>>num; int score[101]={0}; for(int i=0;i<num;i++){ int s;cin>>s; score[s]++; } cin>>check; for(int i=0;i<check;i++){ int s1;cin>&gt.

2020-06-12 19:15:14 141

原创 PAT乙级 1037

//1037#include <iostream>using namespace std;int main(){ int g,s,k,g1,s1,k1,g2,s2,k2,flag=0; scanf("%d.%d.%d %d.%d.%d",&g,&s,&k,&g1,&s1,&k1); if(g==g1&&s==s1&&k==k1){ cout<<"0.0.0";return 0; } .

2020-06-12 18:32:03 139

原创 PAT乙级 1034

//1034#include <iostream>#include <cmath>using namespace std;long long a,b,c,d;long long gcd(long long t1, long long t2){//最大公约数 return t2==0?t1:gcd(t2,t1%t2);} void func(long long m,long long n){//合法输出分数 if(m*n==0){ printf("%s",n==.

2020-06-12 11:36:40 214

原创 PAT乙级1033

//1033#include <iostream>#include <cctype>using namespace std;int main(){ string bad="YOU"; string inp="fuck you"; for(int i=0;i<inp.length();i++){ if(bad.find(toupper(inp[i]))!=string::npos) continue;//如果在bad中找到了inp的大写,就进行下一个循环 .

2020-06-12 10:14:14 152

原创 PAT乙级1032

//1032#include <iostream>#include <map> using namespace std;int main(){ int n; cin>>n; map<int,int> m; for(int i=0;i<n;i++){ int school,score; cin>>school>>score; m[school]+=score; } int max=m.begin().

2020-06-11 19:19:32 108

原创 PAT乙级1031

//1031#include <iostream>using namespace std;char a[11]={'1','0','X','9','8','7','6','5','4','3','2'};int q[17]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};string s;bool istrue(){ int sum=0,m; for(int j=0;j<17;j++){ if(s[j]<'0'||s[j]>.

2020-06-11 18:19:49 106

原创 PAT乙级1027

//1027 #include <iostream>using namespace std;int main(){ int num; char c; cin>>num>>c; int cnt=1,n=num-1,i=3; while(n>=0){ n-=i*2; i+=2; cnt++; } cnt--; int cnt2=cnt; int level=0; while(cnt2>0){ for(int j=0;j&.

2020-06-11 09:38:25 89

原创 PAT乙级 1023

//1023#include <iostream>using namespace std;int main(){ int arr[10]={0}; for(int i=0;i<10;i++) cin>>arr[i]; for(int i=1;i<10;i++) if(arr[i]!=0){ cout<<i;arr[i]--;break; } for(int i=0;i<10;i++) if(arr[i]!=0) .

2020-06-01 14:17:14 102

原创 PAT乙级1021

//1021#include <iostream>using namespace std;int main(){ string s; cin>>s; int a[10]={0}; for(int i=0;i<s.length();i++){ a[s[i]-'0']++; } for(int i=0;i<10;i++){ if(a[i]!=0) cout<<i<<":"<<a[i]<<endl.

2020-06-01 10:24:07 104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除