- 博客(23)
- 收藏
- 关注
原创 回溯法求解TSP问题(C++)
回溯法求解TSP问题TSP问题用回溯法求解代码中的各个点的权值可以按需更改输出会逐步给出搜索过程#include <iostream>using namespace std;void clear(int *flag){ //清空flag表 for (int i = 0; i < 4; ++i) { flag[i] = 0; }}void calculate(int value[4][4]) { int length = 0; /
2020-06-02 14:54:06
1771
原创 回溯法求解0-1背包问题
回溯法求解0-1背包问题有五个物品,装入容量为固定值的背包,求出最大的价值代码中每个物品的重量和价值可以按需要更改输出会逐步给出操作步骤#include <iostream>using namespace std;struct dot{ //点结构 dot *left = nullptr; //左孩子 dot *right = nullptr; //右孩子 dot *father = nullptr; //父节点};void getValue(int
2020-06-01 23:27:24
494
原创 多机调度问题
多机调度问题多个不同的机器由有限个机器来加工处理求出每个机器的调度方式,使总时长最短代码中的各个点的权值可以按需更改输出会给出每步操作的详情#include <iostream>using namespace std;struct task{//作业结构体 int index; //序号 int time; //作业需要的时间};void getTaskList(task taskList[7]){ taskList[0].inde
2020-06-01 23:24:40
246
原创 贪心法实现最近邻点问题
贪心法实现最近邻点问题代码中的各个点的权值可以按需更改输出会给出每次选择的详情#include <iostream>using namespace std;struct line{ //P集合结构体 int from; //从哪个城市出发 int to; //去往哪个城市};bool VHaveI(int V[5],int i){ //判断是否没经过该城市 for (int j = 0; j < 5; ++j) { if(V[j]
2020-06-01 23:19:54
438
原创 0-1背包问题
0-1背包问题有五个物品,装入容量为固定值的背包,求出最大的价值代码中每个物品的重量和价值可以按需要更改同博主的其他博客一样,代码会给出每一步操作的详情(一层层的输出)#include <iostream>using namespace std;void initialization(int w[6],int v[6]){ //初始化w和v数组 w[0] = 0; w[1] = 2; w[2] = 2; w[3] = 6; w
2020-06-01 23:16:41
104
原创 TSP问题求解
TSP问题求解要求:给出带权矩阵,求出最近距离的旅游各个城市的方案代码中的各个点的带权值可以根据需要更改代码的输出会一步步的给出遍历的过程#include <iostream>using namespace std;void getCity(int city[100][100]){ city[0][1] = 3; city[0][2] = 6; city[0][3] = 7; city[1][0] = 5; city[1][2] = 2;
2020-06-01 23:12:33
519
原创 分治法实现最近点对问题(C++)
最近点对问题要求随机生成30个浮点数(1-10)之间求出最近距离的两点C语言实现#include <iostream>#include <math.h>using namespace std;struct dot{ //点结构 float x; float y;};void sortByX(dot dots[6],int num){ //将点按照X坐标从小到大排列好(冒泡) for (int i = num-1; i >=
2020-06-01 23:05:43
2318
原创 分治法实现循环赛日安排表(递归与非递归)(C++)
分治法实现循环赛日程安排表(递归与非递归)递归实现#include <iostream>using namespace std;void leftTopToRightBottom(int table[100][100],int flag,int size){ //左上给右下 for (int i = 1; i <= size/2; ++i) { for (int j = 1; j <= size/2; ++j) { tabl
2020-06-01 23:02:19
403
原创 生产者与消费者(JAVA)
生产者与消费者先有一个容器,生产者只对容器中添加产品,消费者只对容器中消费产品。当生产者检测到容器已满,就会进入wait状态,如果未满,则notifyAll来唤醒消费者线程。当消费者线程检测到容器为空时,进入wait状态,如果不是,则消费,同时nitifyAll。public class PandC { public static void main(String[] args) { Container container = new Container();
2020-05-25 14:44:28
139
原创 ReentrantLock锁与synchronized锁
令一种适用于线程的锁 ReentrantLockimport java.util.concurrent.locks.ReentrantLock;public class Lock { public static void main(String[] args) { ticket tickets = new ticket(); new Thread(tickets,"小王").start(); new Thread(tickets,"小李").st
2020-05-24 12:49:51
113
原创 线程的并发与死锁(JAVA)
public class DeadLock {public static void main(String[] args) {make first = new make(0, “线程一”);make second = new make(1, “线程二”);first.start(); //start 开启新线程,run方法只是普通调用second.start();}}class Class1{ //空类,仅为了实现死锁}class Class2{ //空类,仅为了实现死锁}class
2020-05-23 21:52:05
146
原创 多线程并发与同步及不安全因素(JAVA)
多线程并发与同步及不安全因素错误示例:public class UnsafeBuyTicket { public static void main(String[] args) { BuyTicket buyTicket = new BuyTicket(); //将这个对象通过三个线程来买票 new Thread(buyTicket,"小王").start(); //小王线程 new Thread(buyTicket,"小张").s
2020-05-19 08:46:57
116
原创 多线程实现 (JAVA)
多线程实现继承Thread类实现Runnable接口Thread类实现public class Thread1 extends Thread{ @Override public void run() { for (int i = 0; i < 20; i++) { System.out.println("多线程"+i); ...
2020-04-30 10:31:53
121
原创 UDP 信息传输,URL文件下载 (JAVA)
一条信息的发送与接收UDP与TCP区别UDP就像发短信,不需要与服务器的连接,而TCP就像打电话,需要先连接服务器发送端import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;public class UdpMsgClient { public s...
2020-04-28 21:40:13
340
原创 Tomcat介绍与乱码问题
Tomcat介绍Tomcat是已经定义好的JAVA服务器bin目录下的start.bat是windows下的启动程序start.sh是linux下的启动程序webapps是存放网站的文件访问localhost:8080 即可访问Tomcat主页Tomcat乱码问题config->catalina.properties->修改UTF-8为GBK(wind...
2020-04-28 16:48:21
111
原创 IDEA TCP传输
idea实现信息传输客户端import java.io.IOException;import java.io.OutputStream;import java.net.InetAddress;import java.net.Socket;public class TcpClient1 { public static void main(String[] args) { ...
2020-04-28 16:29:17
1128
原创 JAVA 命名、包机制、重载、接口、异常
java 的命名规范:所有的变量、方法、类名,做到见名知意。类成员变量:首字母小写,遵循驼峰规则局部变量:首字母小写,遵循驼峰规则常量:全部大写,和下划线类名:首字母大写和驼峰规则方法名:首字母小写和驼峰规则包机制JAVA的包的命名规则一般是以公司域名的倒置来命名,例如com.baidu.www这样会生成一个com文件夹,里面还有一个baidu文件夹,baidu文件夹里面...
2020-04-27 15:41:12
140
原创 编译型与解释型与JAVA
编程语言的种类编译型解释型什么是编译型?就是程序全部编写完毕,再经过编译,会后执行,会形成一个编译后的文件。什么是解释型?解释型语言在运行时才编译,比如解释性basic语言,不会形成编译后的文件。JAVA兼具二者的特点...
2020-04-26 21:13:09
98
原创 JAVA 环境搭建与初步接触
java环境变量的配置JDK下载安装(略)JDK根目录解读bin(存放运行工具,如java.exe和javac.exe)include(因为JDK是用c和c++编写的,所以需要引用一些c的头文件)jre (即java运行环境)lib (java 的库文件)文本编辑器的下载,推荐有subline text 和notepad++向世界呐喊新建一个txt文本,更改后缀为.java...
2020-04-26 21:00:21
144
原创 JAVA的相关知识
JAVA优点简单性面向对象可移植性高性能分布式动态性多线程安全性健壮性JAVA三大版本JAVASEJAVAMEJAVAEEJAVASE标准版,适用于桌面程序,控制台开发。JAVAME嵌入式开发(基本已经没有生态,濒临死亡)JAVAEEJAVA最火的领域,适用于web开发,服务器开发等等。JDK、JRE、JVMJDKJava Developme...
2020-04-26 20:30:02
83
原创 基本的dos命令
cmd打开方式win + r 输入cmd,回车,打开在任意文件夹下,按住Shift键+鼠标右键,选择在此处打开poweishell在文件夹的地址栏最前面输入cmd+空格,回车,就可以打开dos命令盘符切换盘符名+英文冒号,回车查看当前目录下的所有文件dir,回车进入/切换目录cd+空格+路径(不能跨盘符,或者在空格后加上/d)返回上一级cd ...
2020-04-26 19:57:47
94
原创 快捷键的使用
快捷键Ctrl+c: 复制Ctrl+v : 粘贴Ctrl+A : 全选Ctrl+z : 撤销Ctrl+s : 保存Alt + F4 :关闭窗口delete :删除文件shift + delete :永久删除文件win + r :运行程序win + e : 打开我的电脑Ctrl+Shift+Esc :打开任务管理器...
2020-04-26 19:35:24
70
原创 markdown语法
标题一级标题:#+空格二级标题:##+空格标题级数越大,字体越小字体粗体字体两侧加上两个*号斜体两侧加上一个*号(三个星号是粗体加斜体)引用左侧<+空格,实现引用选择夜魔,学习java分割线(三个减号或者三个星号)图片感叹号+中括号内图片名,后面小括号内加链接地址超链接[名字](链接地址) 注意都是英文符号列表有序列表“1”+“.”+空格+回...
2020-04-26 19:15:41
91
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人