算法floyd java
EM算法——最大似然估计的拓展
EM算法(Expectation-Maximization)是一种用于解决含有隐变量的概率模型参数估计问题的迭代优化算法。其基本思想是通过交替进行期望(Expectation)和最大化(Maximization)两个步骤来优化模型参数。在E步骤中,通过当前参数对隐变量的条件分布进行估计,计算完全数据 ......
Java变量
JAVA变量 局部变量:必须声明和初始化值 作用域在方法体内 类变量 :也叫静态变量 static 作用域:在整个类中 实例变量:作用域:在整个类中 常量: public class Demo01 { //常量 final static final double PI = 3.14; //类变量 ......
Java方法详解
Java方法详解 1.何为方法 类似于其他语言的函数 Java方法是语句的集合,共同完成一个功能 设计方法的原则: 一个方法实现一个功能,有利于后期的管理和拓展! 命名:首小写+驼峰命名。 2.方法的定义 修饰符 返回值类型 方法名(参数类型 参数名){ 方法体 return 返回值;} 实参:实 ......
文心一言 VS 讯飞星火 VS chatgpt (155)-- 算法导论12.3 2题
二、用go语言,假设通过反复向一棵树中插人互不相同的关键字来构造一棵二叉搜索树。证明:在这棵树中查找关键字所检查过的结点数目等于先前插入这个关键字所检查的结点数目加 1。 文心一言: 为了证明这个结论,我们可以使用二叉搜索树的性质:在二叉搜索树中,每个节点包含一个关键字以及指向其左右子节点的指针。左 ......
一些好玩的Hash算法(CMU15445)
graph LR R[HashTable] --> St[静态哈希策略] R --> Dy[动态哈希策略] St --> 线性探测法 St --> t1[Robin Hood] St --> t2[Cuckoo Hashing] Dy --> Ch[Chained Hashing] Dy --> E ......
Java开发环境详解(安装,工作流程,程序结构与终端运行)
参考书籍: 《明解Java》 《Java轻松学》 《Head First Java》 《Java核心技术卷I》 《Java核心技术卷II》 参考视频: Java零基础学习视频通俗易懂 Java入门基础视频教程,java零基础自学就选黑马程序员Java入门教程 参考网站: KuangStudy 一.J ......
枚举算法
说明:由于要准备期末,这篇笔记就不敲代码了,之后会补上 枚举算法,也被称为穷举算法,是一种解决问题的方法。它通过枚举所有可能的情况来找出问题的解 它的主要思想是按照问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,检验每个可能解是否是问题的真正解,若是,我们采纳这个解,否则抛弃它 ......
Java第八课_构造和静态
2.面向对象的编程 构造 public class Practice { public static void main(String[] args) { Person person1 = new Person(); Person person2 = new Person("lisi"); Pers ......
Java登陆第二十三天——JavaScript对象、JSON、事件
JS中声明对象的两种格式 方法1,new object()然后依次添加属性或方法 栗子: <script> //初始化对象 var user=new Object(); //给对象添加属性并赋值 user.name="张三"; user.age=18; //给对象添加方法 user.say=func ......
机器学习中的算法——逻辑回归
1.逻辑回归的定位 机器学习分有监督和无监督以及半监督学习三种, 其中有监督学习主要分为分类问题和回归问题; 无监督主要是聚类的算法 其中逻辑回归是属于分类问题 跟上次讲的线性回归有不同,从字面上确实容易混淆 2.逻辑回归的概念 逻辑回归是在线性回归的基础上加上一个非线性的因素(sigmoid函数) ......
【一个队列实现栈】Java队列——Queue接口-LinkedList实现类
leetcode 225. 用队列实现栈 题意:用一个队列实现栈 题解: (1)弹栈:将队头开始的前size()-1个元素全部出队然后重新入队,使队尾元素循环到队头,然后弹出 (2)获取栈顶元素:先将队头开始的前size()-1个元素全部出队然后重新入队,使队尾元素循环到队头,此时队头元素即为栈顶元 ......
Java并发(十八)----常见线程安全类及实例分析
1、常见线程安全类 String Integer StringBuffer Random Vector Hashtable java.util.concurrent (JUC)包下的类 这里说它们是线程安全的是指,多个线程调用它们同一个实例的某个方法时,是线程安全的。 Hashtable table ......
【双栈实现队列】Java——Stack类
leetcode 232. 用栈实现队列 题意:双栈实现队列;要求每个入队、出队操作均摊O(1)复杂度 题解: 用一个栈in维护入队元素,另一个栈out维护出队元素 出队或取队头元素:首先判断栈out是否为空,如果为空,将栈in中的元素pop()到栈out中,那么栈out栈顶元素即为原队列队头元素。 ......
【leetcode 239. 滑动窗口最大值】Java优先队列——PriorityQueue类
leetcode 239. 滑动窗口最大值 题目描述: 1e5大小的nums[]数组中长度为k(1<=k<=1e5)的窗口的最大值 题解: 暴力求解O(n^2)会超时,需要O(nlogn)的解法 使用大根堆优先队列维护窗口元素,每次取最大值复杂度降为O(1),堆结构维护复杂度O(logn) 问:如果 ......
Java String format()
The java string format() method returns the formatted string by given locale, format and arguments. If you don't specify the locale in String.format() ......
递归算法
递归算法是一种特殊的算法,它在一个问题中调用自身来求解。在递归中,一个函数会调用自身,通常是为了简化问题的规模,或者逐步逼近问题的答案。 递归算法通常包括两个主要部分: 基准情况(Base Case):这是递归过程的终止条件。如果没有满足这个条件,递归将继续进行。 递归情况(Recursive Ca ......
java文件的上传与下载
1、文件上传下载 1.1 文件上传 什么是文件上传? 要将客户端(浏览器)大数据存储到服务器端,不将数据直接存储到数据库中,而是要将数据存储到服务器所在的磁盘上,这就要使用文件上传。 为什么使用文件上传? 通过文件上传,可以将浏览器端的大数据直接保存到服务器端。不将数据保存到数据库中,而是保存到服务 ......
Java Spring Boot 拦截器的使用小结
很多时候,我们在开发项目中,总是希望在接口中,尽量进行业务处理,其余的事项交给其他组件来处理,比如: 登录验证 日志记录 接口性能 在 Spring Boot 中,正如大多数框架一样,可以用到拦截件进行处理,不管叫中间件还是拦截件,总之都是为了让我们更好的专注于业务,解耦功能。 我们看看 Sprin ......
安利一个java开发利器——guava
前言 工欲善其事必先利其器,一个好的工具让你花更少的时间,干更多的活,一定程度上比较高效地解放了你的的生产力,让你可以有更多的时间搞事情(摸鱼、划水呀),作为java后端开发人员,guava对我们而言,就是这样的工具,今天我们就来了解下这把利器。 guava guava是什么 Guava是Googl ......
java多线程执行有返回值的任务示例
public static void main(String[] args) throws Exception { long startTime = System.currentTimeMillis(); //ConcurrentHashMap<String, String> map = new C ......
复习java 子类继承父类后,可以直接调用父类的变量和方法,那为什么还用super调用呢?为什么在static方法中不能使用super与this?
1.子类继承父类后,可以直接调用父类的变量和方法,那为什么还用super调用呢?原因:如果子类对父类的变量和方法进行了重写,你又想再使用父类的方法,这是就需要super来调用,否则默认调用你在子类中重写的变量和方法。 this():调用本类中其他重载的构造函数(必须写在函数中的第一行)super() ......
学习C++算法入门第二天
头文件#include<iostream> i=input ,o=outputusing namespace std; 头文件函数:https://blog.csdn.net/qq_32699009/article/details/104615792 参考这个 Hello World! C学过,第一 ......
java文件上传和下载的方式
java上传文件和下载文件有很多种,我只介绍两种:一是io流,二是springmvc,本人更喜欢用springmvc的方式,因为更加简单一io流,需要导入comment.io,和comment.beabuty两个jar以jsp+servert为例直接上代码: import java.io.File; ......
八,JAVA面向对象,封装
alt+insert:自动生成get,set方法 封装,继承,多态 @Nullable:这是一个注解,@开头的都是注解:传参时允许为null public static int getNum(@Nullable String info, int start, int end) {}; 构造器 thi ......
秦疆的Java课程笔记:68 面向对象 什么是继承
继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模。 extands的意思是“扩展”。子类是父类的扩展。 Java中类只有单继承,没有多继承。 继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。 继承关系的两个类,一个为子类(派生类),一个为父类(基类)。子类继承 ......
秦疆的Java课程笔记:67 面向对象 封装详解
该露的露,该藏的藏 程序设计要求“高内聚,低耦合”。高内聚就是类的内部数据数据操作细节自己完成,不允许外部干涉;低耦合是仅暴露少量的方法给外部使用。 封装:数据的隐藏 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。 记住这句话就够了:属性私有,get/set。 ......
算法战斗第一天C++2
A. Way Too Long Words Sometimes some words like "localization" or "internationalization" are so long that writing them many times in one text is quite ......
《Effective Java》阅读笔记-第五章
Effective Java 阅读笔记 第五章 泛型 第 26 条 不要使用原生类型 随着泛型的普及,这条没什么可说的。 如果不知道具体类型,可以使用<?>来代替。 第 27 条 消除 unchecked 警告 原生类型到泛型转换时,编译会有警告,可以使用@SuppressWarnings("unc ......
秦疆的Java课程笔记:65 面向对象 创建对象内存分析
先写两个类 //创建一个Pet类 package OOP.demo; public class Pet { public String name; public int age; public void shout() { System.out.println("喵~~"); } } //主程序Ap ......