自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java ACM模式 处理输入输出

牛客网算法题的acm模式需要自己处理输入和输出,在此记录一下一些值得注意的细节 1、基本答题框架: import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); } } 2、next() 和 nextLine()的区别:  1、next()会自动消去有效字符前的空格,只返

2021-12-04 22:15:50 3283 2

原创 Java实现图的DFS与BFS

总结用java实现图的DFS和BFS。 给你一个有 n 个节点的 有向无环图(DAG)。 请你找出所有从节点 0 到节点 n-1 的路径并输出(不要求按特定顺序)。 二维数组的第 i 个数组中的单元都表示有向图中 i 号节点所能到达的下一些节点,空就是没有下一个结点了。 无向图需要开辟一个数组来标记一个顶点是否访问。 对于有向图来说则不需要。 DFS: List<List<Integer>> res = new ArrayList<>(); //用双端队列来

2021-08-25 15:37:48 613

原创 Java实现Dijkstra(用堆优化)

你在一个城市里,城市由 n 个路口组成,路口编号为 0 到 n - 1 ,某些路口之间有 双向 道路。输入保证你可以从任意路口出发到达其他任意路口,且任意两个路口之间最多有一条路。 给你一个整数 n 和二维整数数组 roads ,其中 roads[i] = [ui, vi, timei] 表示在路口 ui 和 vi 之间有一条需要花费 timei 时间才能通过的道路。你想知道花费 最少时间 从路口 0 出发到达路口 n - 1 的方案数。 请返回花费 最少时间 到达目的地的 路径数目 。由于答案可能很大,将

2021-08-24 19:00:59 736

原创 石开1.0总结

Read me 这篇帖子仅是我这一年来的复习历程与简单的经验总结,并不具有普适性,只能做一个简单的参考。 数学 使用书目:李永乐团队的复习全书(红皮) 使用练习题:《李永乐660》、《李永乐330》、《汤家凤1800》(只写了很少一点 没有时间写)。 使用的练习卷:《往年数学真题》《李林六套卷》《合工大超越》《合工大共创》《李林四套卷》《李永乐六套卷》(以重要性递减的方式排序) 网课部分我听了武忠祥的高数基础 和 提高,李永乐的线代。 听基础课的时候时间为暑假,当时对应复习全书,一章一章往后学。刚开始遇到某

2021-03-06 13:47:30 390 4

原创 Java中String,StringBuffer和StringBuilder的区别

一、简单来说 String,StringBuffer和StringBuilder都是Java中关于字符串处理的类。 三者共同之处:都是final类,不允许被继承,主要是从性能和安全性上考虑的,因为这几个类都是经常被使用着,且考虑到防止其中的参数被参数修改影响到其他的应用。 StringBuffer是线程安全,可以不需要额外的同步用于多线程中; StringBuilder是非同步,运行于多线程中就需要使用着单独同步处理,但是速度就比StringBuffer快多了; StringBuffer与StringBui

2021-01-12 21:45:37 2192

原创 遍历二叉树(前序、中序、后序)(JAVA实现)

今天做leetcode上碰到了这个知识点,正好写个帖子来记录一下。 首先,树的结构 public class TreeNode { * int val; //节点的值 * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } 一、前序遍历(中 左 右) 前序遍历(DLR,lchild,data,rchild),是二叉树遍历的一种,也叫做先根遍历、先序遍历、前序周游,可记做根左右。前

2020-08-02 23:06:38 238

原创 为什么网站会不安全?HTTP与HTTPS的不同?

前言 有时候我们在访问网站的过程中,会发现有些网站被浏览器标记为不安全、有风险的,这是怎么一回事呢? 原来,是因为目前全球主流的浏览器(Chrome、Firefox、Safari)都已经用实际行动对HTTP明文协议表示不安全的态度。所以网站如果还是HTTP协议的,就会被标记为不安全。 而解决网站的“不安全”标识的最佳解决方案就是:适应时代潮流及安全需要,将网站整体迁移到HTTPS。 一、HTTP 和 HTTPS 有啥不同呢? HTTP:超文本传输协议(HTTP,HyperText Transfer Prot

2020-07-28 22:03:12 1017

原创 面向对象(OOP)是什么?

面向对象编程(Object Oriented Programming) 很早以前的编程是面向过程的,比如实现一个算术运算1+1 = 2,通过这个简单的算法就可以解决问题。但是随着时代的进步,人们不满足现有的算法了,因为问题越来越复杂,不是1+1那么单纯了,比如一个班级的学生的数据分析,这样就有了对象这个概念,一切事物皆对象。 将现实的事物抽象出来,注意抽象这个词是重点啊,把现实生活的事物以及关系,抽象成类,通过继承,实现,组合的方式把万事万物都给容纳了。实现了对现实世界的抽象和数学建模。这是一次飞跃性的进步

2020-07-28 21:16:59 218

原创 Java中的String为什么被设计成不可变类型?

Java中的String为什么被设计成不可变类型? 首先,我们看一下java中String的源码 可以发现String其实就是由value[] 数组拼接而成,且value是被final修饰的。 1、当final修饰类时,这个类是不可继承的。 2、当final修饰属性时,那么这个属性是不可修改的。 若final修饰的是基本类型(8种),那么它的值是不可修改的。 如果是数组或引用类型,那么仅仅是无法改变引用所指向的地址,而内存地址上的值是可以改变的。 例: public void try(){ final c

2020-07-25 19:07:44 459

原创 单例模式(JAVA面试常考)

单例模式 设计模式 :单例模式 特点:1、简单 2、面试考察性强(线程安全、内存模型、类加载) 问题1:单例模式是什么?为什么需要单例模式 答:①单例模式的定义就是确保某一个类只有一个实例,并且提供一个全局访问点。 ②有的类的实例对象创建和销毁对资源来说消耗不大(例如String),而有的类型比较庞大和复杂,如果频繁的创建和销毁对象并且这些对象是可以复用的,那将造成一些不必要的性能浪费。 例:比如要写一个访问数据库的demo,创建数据库链接的对象就是一个耗资源的操作,并且数据库链接完全是可以复用的。那么就可

2020-07-23 21:56:01 812

空空如也

空空如也

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

TA关注的人

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