判断一个已知的单链表是否有环的额存在,写出实思路,时间复杂度为多少,如果有环,如何找到环的起点,写出实现思路给定一个单链表,判断链表中是否有环的几种方法ADT: class ListNode { int val; ListNode next; ListNode(int x) { val = x; next = null; } } 方法一:循环遍历节点,遍历一个便标记一个,遍历过程判断是否被标记,若已被标记则表示有环 方法说明:头指针移动,若到达之前到达过的位置则表示有环,若无环则会走到链表末端。 public class Sol...
之前没使用过这款日志工具,依赖只导入了导致找不到slf4j核心包,还需要导入完美解决
Go 语言教程一、简介Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区二、用途Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提...
服务是 Dubbo 中的核心概念,一个服务代表一组 RPC 方法的集合,服务是面向用户编程、服务发现机制等的基本单位。Dubbo 开发的基本流程是:用户定义 RPC 服务,通过约定的配置 方式将 RPC 声明为 Dubbo 服务,然后就可以基于服务 API 进行编程了。对服务提供者来说是提供 RPC 服务的具体实现,而对服务消费者来说则是使用特定数据发起服务调用。1.环境搭建下载zookeeper 解压后文件目录进入bin目录下,运行cmd输入zkServer后回车,第一回报缺少配置文件的错误返回到conf目录下,有一个zoo_simple.conf文件,将此文件复制一份并改名成zoo....
NIO基础NIO:non- blocking io非阻塞1.三大组件1.1 Channel & Bufferchannel(通道的意思)有一点类似于 stream,它就是读写数据的双向通道,可以从 channel将数据读入 buffer,也可以将buffer的数据写入 channel,而之前的 stream要么是输入,要么是输出, channel比 stream更为底层常见的 Channel有FileChannel(文件传输通道)DatagramChannel(UDP传输通道)Socke Channel(TCP传输通道)ServersocketChannel(TCP传输通道)buffer...
1.单例模式1.简单的单例模式package Slogan; public class LazySingletonTest { public static void main(String[] args) { LazySingleton instance1 = LazySingleton.getInstance(); System.out.println("instance1 = " + instance1); LazySingleton instance = LazySingleto...
Docker一、安装、启动、配置1.安装网上有较多教程,我的安装windows版本没有成功,直接在云服务器中安装了docker设置aliyun镜像sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker查看是否安装成功:输入docker会输出帮助信息[root@VM-16-6-centos ~]# docker Usage: docker [OPTIONS] COMMAND A self-sufficient runtime for containers ...
Git版本控制1.版本控制1.本地版本控制记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS2.集中版本控制所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改 所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。而且,所有数据都保存在单一的服务器上,有很大的风险这个服务器会损坏,这样就会丢失所有的数据,当然可以定期备份。代表产品:SVN、CVS、VSS3.分布式版本控制 所有版本信息仓库全部同步到本地的每个用...
SVN1.主要内容2.SVN介绍2.1 简介 SVN全称 Subversion,是一个开放源代码的版本控制系统, Subversion在2000年由 Collabnet Inc开发,现在发展成为 Apache软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。 SVN是一个开放源代码的版本控制系统,管理着随时间改变的数据。这些数据放置在一个中央资料档案库( repository)中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样你就可以把档案恢复到日的版本,或是浏览文件的变动历史。说得简单一点SVN就是用于多个人共同开发...
去年参赛还比较嫩,什么算法也不懂只能无脑算,这道题也没做出来。今年再冲一次国赛,看看去年的题,这道题应该是贪心算法,每次去找最近的点,我写的可能有些麻烦,但是运行起来还可以,用的辅助变量比较多,应该会占用不少内存题目:代码:package LinkCode; import java.text.DecimalFormat; import java.util.HashMap; import java.util.Map; import java.util.Set; import java.util.Stack; public class L5 { public static vo...