自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 力扣 902最大为 N 的数字组合

力扣902

2022-10-18 11:52:13 299 1

原创 力扣115 重复的子字符串

给定一个字符串 s 和一个字符串 t ,计算在 s 的子序列中 t 出现的个数。字符串的一个 子序列 是指,通过删除一些(也可以不删除)字符且不干扰剩余字符相对位置所组成的新字符串。(例如,"ACE"是"ABCDE"的一个子序列,而"AEC"不是)题目数据保证答案符合 32 位带符号整数范围。解题方法:动态规划...

2021-10-08 21:18:56 228

原创 力扣 买卖股票的最佳时机系列题解

121. 买卖股票的最佳时机122. 买卖股票的最佳时机 II123. 买卖股票的最佳时机 III188. 买卖股票的最佳时机 IV309. 最佳买卖股票时机含冷冻期714. 买卖股票的最佳时机含手续费121、只能买卖一次方一:一次遍历法记录最大差值!public class Solution { public int maxProfit(int prices[]) { int minprice = Integer.MAX_VALUE; ...

2021-10-07 21:36:26 253

原创 阿里笔试算法题2021

1.小强现在有n个物品,每个物品有x,y两种属性和.他想要从中挑出尽可能多的物品满足以下条件:对于任意两个物品 i 和j ,满足( i.x < j.x 且 i.y < j.y)或者(i.x > j.x 且 i.y > j.y).问最多能挑出多少物品 第一行输入一个正整数 T.表示有T组数据. 对于每组数据,第一行输入一个正整数N.表示物品个数N. 接下来两行,每行有个N整数. 第一行表示N个节点的X属性. 第二行表示N个节点的Y属性.

2021-07-27 17:24:51 6867 2

原创 力扣49 字母异位词分组

给定一个字符串数组,将字母异位词组合在一起。可以按任意顺序返回结果列表。字母异位词指字母相同,但排列不同的字符串。示例 1:输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"] 输出: [["bat"],["nat","tan"],["ate","eat","tea"]]示例 2:输入: strs = [""]输出: [[""]]示例 3:输入: strs = ["a"] 输出: [["a"]]算法思...

2021-07-26 20:45:21 308

原创 力扣24 两两交换链表中的节点

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]方法:迭代思路与算法创建哑结点 dummy,令 dummy.next = head。令p表示当前到达的节点,初始时 p = dummy。每次需要交换 temp 后面的两个节

2021-07-26 17:58:29 125

原创 力扣20 有效的括号

给定一个只包括 '(',')','{','}','[',']'的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例2:输入:s = "()[]{}"输出:tru示例3:输入:s = "(]"输出:false示例4:输入:s = "([)]"输出:false示例5:输入:s = "{[]}"输出:true...

2021-07-26 14:09:42 228

原创 力扣19 删除链表的倒数第N个结点

题目:给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]解法解析:我们也可以在不预处理出链表的长度,以及使用常数空间的前提下解决本题。由于我们需要找到倒数第 n个节点,因此我们可以使用两...

2021-07-26 13:28:02 225

原创 力扣 3. 无重复字符的最长子串

给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是'abc'思路标签:滑动窗口 暴力解法时间复杂度较高,会达到 O(n^2),故而采取滑动窗口的方法降低时间复杂度 定义一个 map 数据结构存储 (k, v),其中 key 值为字符,value 值为字符位置 +1,加 1 表示从字符位置后一个才开始不重复 我们定义不重复子串的开始位置为 start,结束位置为 end...

2021-07-21 14:21:54 137

转载 力扣143 重排链表

给定一个单链表 L 的头节点 head ,单链表 L 表示为:L0→ L1→ … → Ln-1→ Ln请将其重新排列后变为:L0→Ln→L1→Ln-1→L2→Ln-2→ …不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入: head = [1,2,3,4]输出: [1,4,2,3]示例 2:输入: head = [1,2,3,4,5]输出: [1,5,2,4,3]方法一:线性表因为链表不支持下标访...

2021-07-21 13:09:21 181

原创 牛客70 单链表排序

描述给定一个无序单链表,实现单链表的排序(按升序排序)。示例1输入:[1,3,2,4,5]复制返回值:{1,2,3,4,5}方一:值排序,不是真正做到链表排序,直接遍历整个链表,用一个数组存储所有的val,然后进行排序,最后将排序完的值赋值给链表import java.util.*;public class Solution { public ListNode sortInList (ListNode head) { // write code here

2021-07-21 11:27:15 211

原创 第15题 三数之和

题目:给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1: 输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2],[-1,0,1]] 示例 2: 输入:nums = [] 输出:[] 示例 3: 输入:nums = [0] 输出:[]解题思路:其中第二个问题,从0遍历到length-...

2021-07-09 11:16:06 177

原创 第五题 最长回文子串

解法 1: 暴力破解暴力求解,列举所有的子串,判断是否为回文串,保存最长的回文串public boolean isPalindromic(String s) { int len = s.length(); for (int i = 0; i < len / 2; i++) { if (s.charAt(i) != s.charAt(len - i - 1)) { return false; } } return true; }// 暴力解法publ

2021-07-07 15:29:29 152

原创 第二题 两数相加

题目:给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,...

2021-07-07 13:03:35 126

原创 第一题 两数之和

给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。分析:关于为什么将num[i]当作key是因为,java中Map的操作有一个Map.containsKey()可以用来判断Map中是否含有此key存在。题解:class Solution { public int[] t...

2021-07-07 11:24:23 153

原创 Evolving Deep Neural Networks by Multi-objective Particle Swarm Optimization for Image Classificatio

摘要:近年来,为了在图像分类中获得更好的分类精度,卷积神经网络已经变得更加深入。然而,由于人工微调超参数的困难以及分类精度和计算成本之间的权衡,很难将最先进的DNNs用于工业用途。本文提出了一种新的多目标优化方法,用于在现实应用中进化最先进的深度神经网络,该方法在帕累托前沿自动进化非支配解。主要贡献有三点:第一,设计了一种新的编码策略来编码最先进的中枢神经系统之一;以分类精度和浮点运算次数为目标,提出了一种多目标粒子群优化算法来进化非支配解;最后但同样重要的是,设计了一个新的基础设施,通过在多台机器上的

2021-03-16 11:32:11 443

原创 Particle swarm optimization of deep neural networks architectures for image classification

Abstract:深度神经网络在解决现实世界的问题上已经显示出优于经典的机器学习算法。然而,最成功的深层神经网络是从零开始手工制作的,考虑了问题领域的知识。这种方法通常会消耗大量的时间和计算资源。在这项工作中,我们提出了一种基于粒子群优化算法的新算法,与其他进化方法相比,该算法能够快速收敛,自动搜索有意义的深度卷积神经网络结构,用于图像分类任务,称为粒子群优化神经网络。设计了一种新的直接编码策略和一种速度算子,使得粒子群优化算法能够与神经网络一起优化使用。我们的实验结果表明,粒子群优化神经网络可以快速找

2021-01-05 10:38:18 371

原创 Automatic Searching and Pruning of Deep Neural Networks for Medical Imaging Diagnostic

1.简介深度神经网络是用于从原始和高维数据中提取有意义知识的最有效的计算模型之一。DNNs的使用有助于解决计算机视觉[1]、自然语言理解[2]、机器人学[3]和许多其他领域中的各种挑战性问题。DNN的拓扑或架构是通过堆叠能够执行简单数学运算的计算节点来构建的,例如求和、乘法和卷积。通过计算给定数据库或数据集上损失函数的偏导数,可以轻松调整这些简单节点中的参数。此外,因为这样的节点正在计算简单的操作,所以它们中的许多可以在图形处理单元(GPU)上并行运行。由卷积运算组成的DNN架构是用于医学成像诊断领

2020-12-30 10:52:55 258

原创 cPSO-CNN: An efficient PSO-based algorithm for fine-tuning hyper-parameters of convolutional neural

1.简介人工群体智能算法,如遗传算法[1],粒子群优化[2]和烟花算法[3],自问世以来,一直显示出其在现实世界中优化难题的强大能力。依靠从邻居和环境中收集引导信息并相应调整其行为的简单智能体群体,高智能体作为一个整体出现,其优点是不要求目标问题具有任何优化方便的数学属性,如连续性、可导性或凸性。因此,对于许多复杂的问题,通常是高度非线性和多模态的,系统集成算法通常比传统的数学规划方法性能更好。而优化卷积神经网络的超参数配置正是这类问题。虽然LeCun等人首创的CNN Lenet-5在几十年前就解.

2020-12-18 15:52:15 804 4

原创 I/O流 基础day-17

1.I/O流1.1 基本概念 I/O就是Input/Output的含义,也就是输入/输出的含义。 I/O流就是指像流水一样不间断地进行输入输出的过程。1.2 基本分类 以读写数据的基本单位不同分为:字节流 和 字符流。 其中字节流主要指以字节为单位进行读写的流,可以读写任意类型的文件。 其中字符流主要指以字符(2个字节)为单位进行读写的流,只能读写文本文件。 以数据流动的方向不同分为:输入流 和 输出流(站在程序的角度)。 其中输入流主要指从硬盘中的文件读取...

2020-12-17 10:49:01 134

原创 安装pytorch,配置Pycharm和Jupyter

1.创建新的虚拟环境(base) C:\Users\zym>conda create -n pytorch python=3.7 2.激活虚拟环境conda activate pytorch 3.https://pytorch.org/get-started/locally/pytorch安装网站根据电脑环境选择相对应的配置4.复制运行下面的安装命令conda install pytorch torchvision torchaudio cudatoolkit=10.

2020-11-23 17:27:43 812 1

原创 完全自动化的基于块的CNN架构设计

Completely Automated CNN Architecture Design Based on Blocks问题引出:给定一个CNN,记录为有n个体系结构系数记为,其决策空间是CNN的架构设计分别是为了优化问题的表述如下 其中表示CNN 采用体系结构参数设置为,表示验证在训练集Dtrain训练之后,在验证集Dvalid上的性能。在分类任务的情况下,测量应用了的任务的分类误差。典型...

2020-10-24 11:24:36 377

原创 基于遗传算法的图像分类自动设计

1.目的对于在CNN方面没有扩展专业知识的用户来说,很难为他们自己感兴趣的图像分类问题设计最佳的CNN架构。本文提出了一种利用遗传算法自动设计CNN架构的方法,以有效解决图像分类任务。该算法的最大优点在于其“自动”特性,即用户在使用该算法时不需要神经网络的领域知识。遗传算法GA相关知识请自己查阅相关知识,此文章不会过多介绍(因为太基础了)2.创新点2.1 GAs通常采用固定长度编码策略,因为交叉算子最初是为具有相同长度的个体设计的。在这种情况下,必须事先指定编码的长度。理想情况下,长度应该是事先

2020-10-22 20:53:02 1066 7

原创 PSO优化算法优化卷积神经网络(IPPSO)

1.编码结构的设计IPPSO编码策略的灵感来自网络IP地址的工作方式。虽然CNN架构由三种类型的层——卷积层、池化层,全连接层,和不同类型的编码信息层变化的参数的数量和范围在每个参数显示在表我,网络IP地址的固定长度足够可以用来容纳所有类型的CNN层,然后网络IP可分为无数的子集,每一个都可以用来定义一个特定类型的CNN层。首先,需要设计基于ip编码方案下二进制字符串的长度。对于Conv层,首先,在表I的参数列中列出了三个关键参数:filter size, feature map number an

2020-10-19 10:30:50 3276 4

原创 java网络编程基于TCP和UDP

2.基于tcp协议的编程模型(重中之重)2.1 编程模型服务器: (1)创建ServerSocket类型的对象并提供端口号; (2)等待客户端的连接请求,调用accept()方法; (3)使用输入输出流进行通信; (4)关闭Socket并释放有关的资源;客户端: (1)创建Socket类型的对象,并提供服务器的IP地址和端口号; (2)使用输入输出流进行通信; (3)关闭Socket并释放有关的资源;2.2 相关类和方法的解析(1)Serv...

2020-08-04 17:40:51 334

原创 java实现线程同步的三种方法,保证线程安全

实现同步的三种方法多线程共享数据时,会发生线程不安全的情况,多线程共享数据必须同步。实现同步的三种方法:使用同步代码块 使用同步方法 使用互斥锁ReetrantLock(更灵活的代码控制)锁:同步监视器,可以任意一个对象,通常可以收用共享对象作为锁,this,还可以准备任意一个不变的对象(没有业务逻辑,只作为锁)同步代码块的执行过程: 1.第一个线程来到,发现有锁,但是是open的状态,进去执行,同时将状态修改为close; 2.第一个线程可能在执行过程中释放C...

2020-08-03 10:20:53 697

原创 Java中线程的三种创建方式和简单使用

创建方法1:自定义类继承Thread类并重写run()方法,然后创建该类的对象后调用start()方法;public class TestSubThreadRun extends Thread { @Override public void run(){ System.out.println("我就是重写后的run()方法"); } public static void main(String[] args) { //父类类型的引用指向子类类型的对象形成多态 Thread

2020-08-03 10:11:13 188

原创 Spring和Hibernate整合操作day-04

Spring提供了对Hibernate整合支持,支持包spring-orm.jar,提供的主要组件如下:1.LocalSessionFactoryBean 在Spring容器中创建一个SessionFactory对象。2.HibernateTemplate 类似于JdbcTemplate,封装了session使用过程。3.OpenSessionInVi...

2020-03-22 16:05:05 418

原创 SSH Hibernate框架特征之延迟加载、对象持久化、缓存、关联映射day-04

延迟加载(懒加载) hibernate有些查询API,在执行后并没有立刻去查数据库,而是在后续使用对象数据时才会发送SQL加载数据。以下三种操作涉及延迟加载相对的是立刻性:1.load查询 -- get2.关联查询 -- join fetch3.query.iterator -- query.list上述方法,使用中会经常遇到下面异常信息 org....

2020-03-12 20:56:43 164

原创 SSH Hibernate框架简介、基本操作、主键生成、注解映射描述、HQL语句、Native SQL、Criteria语句day-03

Hibernate框架用于实现关系型数据库访问操作。例如Oracle、Mysql。是基于ORM思想将jdbc进行了封装,实现对象关系映射。目标:将关系表中数据映射成Java中实体对象,程序员对对象操作从而实现对数据库操作Hibernate和MyBatis的区别1.Hibernate复杂度比MyBatis高,功能多2.Hibernate自动生成SQL,MyBatis编写SQL...

2020-03-10 19:48:28 290

原创 SSH Struts2 JSON响应、注解配置 Struts2+Spring 整合day-02

JSON响应Struts2中提供了一个json类型的Result,可以生成JSON字符串响应。需要引入struts2-json-plugin.jar包,在json-default包中。返回Action获取的多个属性信息/json1.do-->StrutsPrepareAndExecuteFilter-->Action-->Result-->生成JSON响应1...

2020-03-06 18:38:56 305

原创 SSH简介、Struts2介绍,实现结构,基本使用day-01

SSH简介Struts+Spring+HibernateStruts2介绍Struts2是apache组织推广和维护。Struts2和Struts1没有必然联系,是将webwork框架内核(xwork)进行封装和改造,命名为Struts2推广。Struts2是基于MVC思想设计的框架,例如SpringMVC、Struts1、WebWork、JSF等。Struts2的实现结构...

2020-03-05 19:17:50 196

原创 SpringBoot 综合案例day-05

部门管理小程序需求:部门信息的增删查改操作、分页浏览架构:前后分离模式(后台restful服务、前台界面)技术:后台(SpringBoot、SpringMVC、SpringIOC、Mybatis、restful) 前台(html、jquery、ajax)后台开发1.添加/dept/post POST2.删除/dept/remov...

2020-02-27 20:04:39 287

原创 SpringBoot 任务调度(立即启动、周期启动)、 Servlet应用、总结day-05

SpringBoot 任务调度 在很多系统中,经常会遇到定时、周期调用一个或多个任务。 SpringBoot提供了Job Schedule模块,可以方便的开发任务调用功能。原来企业一般都采用quartz工具实现。服务器启动立刻执行服务器启动-->加载项目project-->web.xml-->servlet、filter、listener-->任务写...

2020-02-24 19:47:44 667

原创 Springboot 开发Thymeleaf应用 、静态资源、拦截器、AOPday-04

开发Thymeleaf应用简介Thymeleaf属于视图显示技术、模板技术。模板文件(模板表达式)+模板数据=HTML结果(性能比JSP文件要高)JSP文件(EL+JSTL+其他标签)+模板数据=HTML结果JSP-->Servlet-->.Class-->HTML结果模板和JSP区别:模板生成HTML界面效率高,JSP效率低 模板学习和使用简单...

2020-02-20 19:35:39 345

原创 SpringBoot访问Redis、MongoDB SpringBoot MVC开发Restful服务、JSP应用day-03

Redis访问SpringBoot提供了自动配置组件,可以自动创建RedisTemplate对象。1.在pom.xml中定义jar包<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.out...

2020-02-16 20:06:25 150

原创 SpringBoot数据库访问、DAO应用、整合Mybatis、JPA应用day-02

DBMS关系型数据库JDBC、Spring DAO、MyBatis、JPA、Hibernate等技术连接池应用SpringBoot通过自动配置创建连接池对象,自动配置组件DataSourceAutoConfiguration.自动配置组件创建连接池机制:默认连接池的使用方法:- 首先创建Hikari连接池对象- 如果Hikari创建失败(未找到jar包),尝试创建Tomca...

2020-02-14 17:50:27 189

原创 Spring-boot 入门day-01

SpringBoot简介SpringBoot是对Spring框架封装,目的是简化Spring应用的搭建和开发过程SpringBoot优点:1.SpringBoot内置tomcat等服务器2.SpringBoot去除了XML配置完全采用Java配置模式3.SpringBoot提供了自动配置功能4.SpringBoot提供了一系列jar工具集合,便于引入管理5.Spring...

2020-02-11 17:38:38 136

原创 Eclipse+Maven开发SSM案例day-03

1.先完成Spring整合MyBatis技术写一个Dept.java实体类 略采用注解sql的方式写一个DeptMapper接口public interface DeptMapper { @Select("select * from DEPT") public List<Dept> findAll();}配置applicationcontext.xml配置文件...

2020-02-05 16:12:10 275

原创 Maven配置和使用day-03

MAVEN介绍MAVEN工具是一个项目构建工具,可以负责创建项目、编译代码、运行测试、打包发布、jar包管理等过程。MAVEN最初目的:多个项目共享jar包。MAVEN安装和使用MAVEN可以采用命令行方式使用,也可以采用Eclipse整合应用。 命令行方式 将maven的zip包解压缩,然后在系统配置path环境变量,最后采用mvn命令使用。 mvn arche...

2020-02-04 21:51:55 136

空空如也

空空如也

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

TA关注的人

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