- 博客(29)
- 资源 (9)
- 收藏
- 关注
原创 哲学家就餐问题
有五位哲学家,围坐在圆桌旁。他们只做两件事,思考和吃饭,思考一会吃口饭,吃完饭后接着思考。吃饭时要用两根筷子吃,桌上共有 5 根筷子,每位哲学家左右手边各有一根筷子。如果筷子被身边的人拿着,自己就得等待。class Chopstick extends ReentrantLock { String name; public Chopstick(String name) { this.name = name; } @Override public String toString()
2022-03-31 14:39:06
171
原创 abc交替打印
class SyncWaitNotify { private int flag; private int loopNumber; public SyncWaitNotify(int flag, int loopNumber) { this.flag = flag; this.loopNumber = loopNumber; } public void print(int waitFlag, int nextFlag, String str) { for (int i =
2022-03-31 14:25:05
234
原创 生产者-消费者
生产者-消费者class Message { private int id; private Object message; public Message(int id, Object message) { this.id = id; this.message = message; } public int getId() { return id; } public Object getMessage() { return message; }}
2022-03-31 14:20:11
183
原创 黏包和半包
问题:网络上有多条数据发送给服务器,数据之间用 \n 进行分割,但由于某些原因这些数据在接收时被进行了重新组合,现在要求编写程序将错乱的数据恢复成原来的按 \n 分隔的数据。例如原始数据有3条为:Hello, world\nI’am zhangsan\nHow are you?\n变成了两个ByteBuffer(黏包,半包)Hello, world\nI’am zhangsan\nHow are you?\nimport java.nio.ByteBuffer;public cl
2021-09-29 01:14:41
166
原创 快速排序Java
import java.util.Arrays;public class Main { public static void swap(int[] num, int i , int j){ int temp = num[i]; num[i] = num[j]; num[j] = temp; } public static void sort(int num[], int start, int end){ int
2021-09-10 15:01:32
110
原创 Floyd算法
import java.util.Arrays;import java.util.Scanner;public class Floyd { // 求解图中任意两个结点的最短路径 // 输入: // 正整数N 表示图中N个结点 // 正整数M 表示图中M条边 // i,j,w 表示两个结点的权值 public static void main(String[] args) { final int INF =
2021-09-07 15:53:24
123
原创 Dijkstra算法
import java.util.Arrays;public class Num3 { public static void main(String[] args) { Num3 test = new Num3(); int MAX=Integer.MAX_VALUE-10000; int[][] weight={ {0,1,12,MAX,MAX,MAX}, {MAX,0,.
2021-09-04 12:44:00
125
原创 N皇后问题
非常简单的N皇后问题代码import java.util.*;public class Main{ //N皇后问题 // 输入:正整数N // 输出:输出所有的排列组合 static int N = 0; static int[] pos; // 第i个皇后所在的位置 static List<List<String>> res = new ArrayList(); public static void main(Stri
2021-09-01 08:36:49
109
原创 servlet实现文件上传和下载
servlet实现文件上传注意事项:表单提交方式应为post方式,还要设置表单属性enctype=”multipart/form”使用Part对象来获取上传文件的相关属性以及获取文件的输入流上传到服务器的路径一定要是绝对路径设置编码格式防止中文名乱码使用@MultipartConfig标注Servletservlet实现文件下载注意事项:设置response对象的Cont...
2018-03-25 22:54:14
496
原创 servlet生成网站验证码
Servlet最近在学习Servlet,以我的理解:servlet就是运行在服务器端的一个程序,在需要时(如客户端输入某个url时),web容器自动调用某个servlet实现某个功能。我用Servlet实现了一个网站的验证码dome,给大家分享一下。这是前端的html代码,这里用了下Bootstrap的框架,有想了解这个框架的小伙伴请去官网参考,下载下来将其css和js文件引入...
2018-03-21 17:56:53
958
原创 用python写批量word文档
利用python-docx模块,写批量生日邀请函有关python-docx的使用方法,可以参考官方的API文档。这里使用了其中的一些基本功能,来完成一个简单的任务:为参加聚会的好友,每人写一个word文档邀请函。邀请函也很简单,如下图:下面是代码:import docxfrom docx.enum.text import WD_PARAGRAPH_ALIGNMENT #引...
2018-02-14 16:31:48
2475
原创 c#.net GridView System.ArgumentOutOfRangeException
最近在做asp.net网站作业时候,用到gridview控件,但是在编写更新按钮事件的时候遇到这个错误。 解决方案:在GridView控件中添加DataKeyNames=”id” 这里的id好像可以任意设置。
2017-11-29 18:55:37
2551
原创 JDBC链接数据库
JDBCJDBC的全称是Java Database Connectivity(Java 数据库链接),它是一种可以执行SQL语句的Java API。程序可以通过JDBC 链接到关系数据库,并执行SQL 语句。这些API只是标准接口,没有实现类,需要各种数据库的厂商提供实现(即数据库驱动程序),当链接不同的数据库时,我们需要下载对应的数据库驱动程序。JDBC编程步骤1.加载数据库驱动,通常使用Clas
2017-11-04 15:12:21
1668
原创 字母图形
问题描述:利用字母可以组成一些美丽的图形,输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。 下面给出了一个例子:输入 5 7,则输出:ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC思路:双重循环控制输出,在对角线上时是输出的分界点。在分界线左边是字符输出逐渐减小,在分界线右边字符输出逐渐增大。import java.util.Scanne
2017-10-31 17:45:57
1251
原创 十六进制转八进制数
问题描述:给定n个十六进制正整数,输出它们对应的八进制数。输入的第一行为一个正整数n (1<=n<=10)。接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。刚开始想着,java中Integer类不是提供了进制的转化方法么,直接将输入的16进制先转化成十进制数,在将十进制数转化为2进制数就好了。但是程序的运行错误,看了别人的思
2017-10-28 21:55:21
1574
原创 Fibonacci数列第n个数除以10007的余数
问题描述:Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。(1 )开始的思路是直接利用递推公式算出第n个数,在求出余数。但不幸的是,得分没有得全。过后想了想,是由于当n过大时,Fn太大,基本的数据结构不能存储下,造成溢出,程序无法得出正确答案。import java.util.Sc
2017-10-27 13:24:56
3481
原创 C++ string
在STL(Standard Template Library)中,提供了string类操作字符串,最近学习了该类的一些方法,现在分享一些学习心得。在c++中,字符串被当作以’\0’结束的char数组。string类将字符串看成一个对象,类中提供了很多方法便于我们操作字符串。首先看看构造方法:string str : 构造一个空字符串string str(“ysg”):字符串常量构造stri
2017-10-21 09:06:54
1171
原创 Set
Java集合类可以用来存储元素,集合类和数组的区别是:数组元素可以是基本类型的值,也可以是对象的引用;集合只能保存对象的引用。Java集合类主要由Collection和Map接口派生而出。集合大致可分为Set、List、Queue和Map四种体系。其中Set代表无序,不可重复的集合,是继承自Collection的接口,其下面实现了多个子类。这里学习了2个常用的集合HashSet和TreeSet。Ha
2017-10-19 21:01:41
1239
原创 Python3 函数
自定义函数函数是组织好的,一次定义可多次使用的代码段。Python提供了许多内置函数,比如print()。但我们也可以自己创建函数,这被叫做用户自定义函数。我们先来看一个简单的函数:def hello(): '这是一个简单的函数' print("hello world")hello()上面定义了一个函数hello(),并且调用了函数,最终效果是打印出一句hello world。我们
2017-10-16 10:12:15
1414
原创 Java I/O流操作
输入输出是所有程序都必需的部分,使用输入机制,允许程序读取外部数据(包括磁盘、光盘等);使用输出机制,可以将程序数据输出到磁盘中。Java主要包括输入、输出两种IO流,每种流都可以用字节流或字符流来处理数据。字节流以字节为单位来处理数据,字符流以字符为单位处理数据。File类File类对象主要用来获取文件本身的一些信息,创建和删除文件或文件夹以及运行可执行文件。File类不能访问文件的内容,需要输入
2017-10-11 21:49:58
853
原创 String类常用方法
字符串类是Java中常用的类,在项目开发中的重要性毋庸置疑。最近学习了一些String类中常用的方法,现在来总结一下。既然是类,我们用到的字符串就是一个个的对象,但是String类是不可变类,即一个String对象被创建后,这个对象的实体是不可变的,不可以修改字符串的值。常用构造方法:字符串常量构造: String s1=new String("hello")直接赋值构造: String
2017-09-29 23:24:25
1025
原创 括号序列配对问题
这是最近在ACM练习场上看到的题目:现在,有一行括号序列,请你检查这行括号是否配对。第一行输入一个数N(0用栈结构实现最简单,但是一开始我没想到。大体思路如下:①从输入的每个的字符串的遍历每个字符②如果遇到 '('或'['就压入栈中,因为如果该字符串匹配的话,这两种字符总是先出现在字符串中③如果遇到')'或']',就匹配栈顶的元素,如果栈顶元素是对应的'('或者'[',
2017-09-27 20:06:34
1422
原创 Python List使用的简单心得
List使用的简单心得最近开始学习python了,感觉python很方便,变量不用定义就可以使用了,语法很简介,用起来很方便,而且代码看起来很舒服(哈哈,感觉各种优点啊),对于有了一点编程经验的我来说,自学感觉根本不费力,目前对于python小白的我来说,也就晓得这么多。前两天学习到python的基本数据类型List,现在给大家谈谈自己的想法,并附上自己的小dome,哈哈。List(列表) 是 Py
2017-09-20 20:09:07
1003
原创 网络基础篇(三):交换机工作原理
一、为什么需要交换机 为了方便理解通信过程,我们可以将其比喻成快递的邮递过程。信息经过应用层处理成为消息,在传输层选择传输协议,在网络层添加源IP和目的IP地址,在数据链路层添加源MAC和目的MAC地址,然后变成比特流进行传输。传输过程中,目的IP地址是一个大范围的地址(国内的公有IP资源耗尽,多个主机会共用一个IP),相当于快递单上的目的地,如xx省xx市xx街,我们还需要知道
2017-07-16 09:31:25
3237
1
原创 网络基础篇(二):网络层工作原理
一、二进制与十进制的转化给出一个二进制数,怎么转化成十进制数?例如10001110=128+8+4+2=142,即2^7+2^3+2^2+2^1。那么十进制数怎么变成二进制呢?例如239,怎么操作最快捷?常用的方法是除2取反法,这里介绍一个更快的方法,239=128+64+32+8+4+2+1=2^7+2^6+2^5+2^3+2^2+2^1+2^0,这样我们就可以直接写出二
2017-07-15 18:51:22
4034
原创 网络基础篇(一):OSI七层模型
一、OSI七层模型简介①应用层:提供了一个人机交互的页面,例如QQ的聊天窗口;数据单元为消息②表示层:将数据转化成计算机能够识别的语言;③会话层:隔绝不同的应用程序,例如QQ发的消息,用微信不能收到;④传输层:传输层的协议有 TCP 和 UDP 协议,其中TCP为可靠传输协议,数据丢失会重传,用于传输可靠的信息;UDP协议为不可靠协议,常用于实时性业务,如视频直播;数据单元为数
2017-07-12 12:02:07
1061
原创 odbc数据源配置sql server出错 14
使用odbc数据源配置sql server链接时出现 错误14 有效解决方案连接失败: SQLState: '01000' SQL Server 错误: 14 [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]ConnectionOpen (Invalid Instance()). 连接失败: SQLState: '08001'
2017-06-09 21:40:36
6246
原创 在window中通过IIS发布自己的网站经验总结
1.启用windows IIS功能打开控制面板(按住win+x键选择控制面板选项)、进入控制面板,选择程序选项,进入后选择启用或关闭Windows功能,进入后如下图所示。勾选Internet Information Services 和Internet Information Services可承载的Web核心,点击确定后系统自动帮你下载IIS程序。2.准备一个测试
2017-04-04 13:02:13
11197
原创 u盘安装原版window10系统
安装工具:8GU盘一个安装步骤:1.从https://www.microsoft.com/en-us/software-download/windows10下载创建安装介质工具MediaCreationTool2.运行MediaCreationTool工具,出现下图界面3.点击接受,选择为另一台电脑创建安装介质。4.点击下一步,然后选择系统安装的语言,体系结构和版本。5.选
2017-02-07 09:39:01
1613
hadoop-common-2.2.0-bin_32bit_&_64bit
2018-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人