刷题Java常用方法总结
刷题Java常用方法总结
文章目录
- 刷题Java常用方法总结
- 快速查看:
- 静态数组 Static Array
- 初始化
- instance属性
- length
- 技巧
- Arrays.sort从小到大排序
- Arrays.fill填满一个数组
- Arrays.copyOf / arr.clone()复制一个数组(二维数组也可以)
- 动态数组 List & Dynamic Array
- 初始化
- 常规 - ArrayList更常用
- 接受一个Stack、Set等容器为参数 - 以Set举例
- instance方法(List接口方法)
- get
- size
- add
- remove
- subList
- 技巧
- 栈 Stack
- 初始化 (唯一初始化方式)
- instance方法
- push
- pop
- peek
- isEmpty
- size
- 队列 Queue
- 初始化
- 使用LinkedList实现Queue接口初始化
- 把集合如Stack、Set、List等Collection作为参数
- instance方法 (Queue接口)
- offer
- poll
- peek
- isEmpty
- size
- 优先队列 PriorityQueue (Heap)
- 初始化
- 小根堆
- 大根堆
- instance方法 (Queue接口方法)
- offer
- poll
- peek
- isEmpty
- size
- 技巧
- 从小到大(或从大到小弹出元素)
- 集合 Set - HashSet
- 初始化
- 默认构造函数
- 把集合如Stack、Queue、List等Collection作为参数
- instance方法 (Set接口方法)
- add
- remove
- contains
- isEmpty
- size
- first (TreeSet)
- last (TreeSet)
- 散列表 HashMap
- 初始化
- <Key, Value> key和value是任何Collection或任何Object
- instance方法 (Map接口方法)
- put
- get
- getOrDefault
- containsKey
- containsValue
- keySet
- values
- isEmpty
- size
- 字符串
- String
- 初始化
- 字符串复制初始化
- 基于另外一个字符串
- 基于char[]
- 类方法
- instance方法
- charAt
- length
- substring
- indexOf 是(暴力查找字符串,不是KMP)
- lastIndexOf
- replace 只能换char
- toCharArray
- trim 去除前后空格
- split 以什么分开
- toLowerCase, toUpperCase 转换大小写
- 技巧
- StringBuilder
- 初始化
- instance方法
- charaAt
- length
- setCharAt
- insert
- deleteCharAt
- delete
- reverse
- toString
快速查看:
类 | 方法 |
---|---|
String | charAt toCharArray split substring indexOf lastIndexOf replace length |
List | add remove get size subList |
Stack | push pop peek isEmpty size |
Queue | offer poll peek isEmpty size |
PriorityQueue | offer poll peek isEmpty size |
Set | add remove contains isEmpty size first(TreeSet) last(TreeSet) |
Map | put get getOrDefault containsKey containsValue keySet values isEmpty size |
静态数组 Static Array
性质:初始化后长度不能变了
初始化
// Type[] names = new Type[capacity];
int[] a = new int[10];
String[] s = new String[3];// Type[] names = new Type[]{Tpye ...a};
int[] a = new int[]{1, 2, 3, 4}; // int[] a = {1, 2, 3, 4};
char[] b = new char[]{'a', 'b'}; // char[] b = {'a', 'b'};
String[] s = new String[]{"hello", "world"};// 创建
Set<String> set = new Set[105]; // 每一个指向一个null
for (int i = 0; i < 105; i++) jud[i] = new HashSet<>(); // 每个Set现在才被创建出来
- 二维
int[][] c = new int[10][10];
instance属性
length
.length
记得是属性而不是方法 arr.length
没有()
技巧
Arrays.sort从小到大排序
Arrays.sort(int[] arr)
Arrays.sort(int[] arr, int fromIndex, int toIndex)
数组类型只要实现了Comparable接口就行(基本数据类型int也可以)
Arrays.sort(int[] arr, int fromIndex, int toIndex, 比较器); //一定是需要泛型Arrays.sort(arr, 0, 3, (o1, o2) -> o2 - o1); //从大到小排序,只排序[0, 3)
复制代码
Arrays.fill填满一个数组
int[] a = new int[5];
Arrays.fill(a, 1);
复制代码
Arrays.copyOf / arr.clone()复制一个数组(二维数组也可以)
int[] a = new int[5];
int[] newA = Array.copyOf(a, 5);
// or
int[][] a = {{1}, {1,2}, {1,2,3}, {1,2,3,4}, {1,2,3,4,5}};
int[][] newa = a.clone(); // 5*5矩阵
复制代码
动态数组 List & Dynamic Array
性质: 可以动态扩容的数组
初始化
常规 - ArrayList更常用
List<Integer> array = new ArrayList<>(); // 数组
List<Integer> list = new LinkedList<>(); // 链表
复制代码
接受一个Stack、Set等容器为参数 - 以Set举例
// Set<Integer> a = new HashSet....
List<Integer> b = new ArrayList<>(a);
复制代码
instance方法(List接口方法)
方法:get, size, add, remove, subList
get
.get(int index) // 返回元素位置在index的元素e --- array O(1), list O(n)
复制代码
size
.size() // 返回数组长度 --- O(1)
复制代码
add
.add(E e) // 在尾部添加一个元素e --- O(1)
.add(int index, E e) // 在index位置插一个元素e --- O(n)
复制代码
remove
.remove(int index) // 删除位于index的元素,并返回删除元素e --- 删除最后元素为O(1), 其余为O(n)
//删除最后元素 list.remove(list.size() - 1);
复制代码
subList
.subList(int from, int to) // 相当于返回原数组的一个片段,但不要对其进行改动,改动会影响原数组 --- O(1)
// List<Integer> list, 对原来的list和返回的list做的“非结构性修改”(non-structural changes),
//都会影响到彼此对方. 如果你在调用了sublist返回了子list之后,如果修改了原list的大小,那么之前产生的子list将会失效,变得不可使用
复制代码
技巧
Collections.sort(list);
从小到大排序 Collections.sort(list, Collections.reverseOrder());
从大到小排序, 第二个参数为一个比较器
栈 Stack
性质: 先进后出
初始化 (唯一初始化方式)
Stack<Integer> stack = new Stack<>();
复制代码
instance方法
方法:push, pop, peek, isEmpty, size
push
.push(E e); // 入栈元素e, 返回值为元素e --- O(1)
复制代码
pop
.pop(); // 出栈一个元素,返回出栈元素e --- O(1)
复制代码
peek
.peek(); // 查看栈顶元素, 返回值为栈顶元素e --- O(1)
复制代码
isEmpty
.isEmpty() // 若栈空返回true, 否则返回false --- O(1)
复制代码
size
.size() // 返回栈中元素个数 --- O(1)
复制代码
队列 Queue
性质:先进先出 通过实现实现队列接口的LinkedList<>();
初始化
使用LinkedList实现Queue接口初始化
Queue<Integer> q = new LinkedList<>();
复制代码
把集合如Stack、Set、List等Collection作为参数
// Set<Integer> set = new HashSet<>();
Queue<Integer> q = new LinkedList<>(set);
复制代码
instance方法 (Queue接口)
方法:offer, poll, peek, isEmpty, size
offer
.offer(E e); // 队尾加入元素e。 若成功入队返回值true,否则返回false --- O(1)
复制代码
poll
.poll(); // 出队首,返回出队元素e --- O(1)
复制代码
peek
.peek(); // 查看队首元素, 返回值队首元素e --- O(1)
复制代码
isEmpty
.isEmpty() // 若队空返回true, 否则返回false --- O(1)
复制代码
size
.size() // 返回队中元素个数 --- O(1)
复制代码
优先队列 PriorityQueue (Heap)
性质:底层是一颗数, 以小根堆为例。对于任意结点来说,该节点的值比其左右孩子的值都要小。 (就是最上面的结点最小)。 大根堆类似,最上面结点最大
初始化
小根堆
Queue<Integer> minH = new PriorityQueue<>(); // 小根堆,默认大小为11 相当于 new PriorityQueue<>(11)
Queue<Integer> minH = new PriorityQueue<>(100); // 定义一个默认容量有100的小根堆。在当中增加元素会扩容,只是开始指定大小。不是size,是capacity
复制代码
大根堆
Queue<Integer> maxH = new PriorityQueue<>((i1, i2) -> i2 - i1); // 大根堆,默认大小为11 相当于 new PriorityQueue<>(11, (i1, i2) -> i2 - i1)
Queue<Integer> maxH = new PriorityQueue<>(100, (i1, i2) -> i2 - i1); // 定义一个默认容量有100的大根堆。在当中增加元素会扩容,只是开始指定大小
复制代码
instance方法 (Queue接口方法)
方法:offer, poll, peek, isEmpty, size
offer
.offer(E e); // 在堆中加入元素e,并调整堆。若成功入堆返回值true,否则返回false --- O(logN)
复制代码
poll
.poll(); // 弹出堆顶元素,并重新调整堆,返回出队元素e --- O(logN)
复制代码
peek
.peek(); // 查看堆顶元素, 返回值堆顶元素e --- O(1)
复制代码
isEmpty
.isEmpty() // 若队空返回true, 否则返回false --- O(1)
复制代码
size
.size() // 返回队中元素个数 --- O(1)
复制代码
技巧
从小到大(或从大到小弹出元素)
while (!pq.isEmpty()) {}
复制代码
集合 Set - HashSet
性质:Set中没有重复元素,重复添加的元素抛弃
初始化
默认构造函数
Set<Integer> set = new HashSet<>();
复制代码
把集合如Stack、Queue、List等Collection作为参数
// List<Integer> list = new ArrayList<>....;
// Set<Integer> set = new HashSet<>(list);
复制代码
instance方法 (Set接口方法)
方法:add, remove, contains, isEmpty, size
add
.add(E e); // 在集合中添加元素E e, 若成功添加则返回true,若集合中有元素e则返回false --- O(1)
复制代码
remove
.remove(E e); // 在集合中删除元素e,若删除成功返回true;若集合中没有元素e,返回false --- O(1)
复制代码
contains
.contains(E e); // 若存在元素e,则返回true,否则返回false --- O(1)
复制代码
isEmpty
.isEmpty() // 若集合为空返回true, 否则返回false --- O(1)
复制代码
size
.size() // 返回集合中中元素个数 --- O(1)
复制代码
first (TreeSet)
.first() // 返回集合里的最小值(若给了比较器从大到小则是返回最大值)
复制代码
last (TreeSet)
.last() // 返回集合里的最大值(若给了比较器从大到小则是返回最小值)
复制代码
散列表 HashMap
性质:使用健值对的方式存储数据 <Key,Value>
初始化
<Key, Value> key和value是任何Collection或任何Object
Map<Characters, Integer> map = new HashMap<>();
复制代码
instance方法 (Map接口方法)
方法:put, get, getOrDefault, containsKey, containsValue, keySet, values, isEmpty, size
put
.put(K key, V value); // 在Map中加入键值对<key, value>。返回value值。如果Map中有key,则replace旧的value --- O(1)
复制代码
get
.get(K key); // 返回Map中key对应的value。若Map中没有该key,则返回null --- O(1)
复制代码
getOrDefault
.getOrDefault(K key, V defaultValue); // 返回Map中key对应的value。若Map中没有该key,则返回defaultValue --- O(1)// For example:
// Map<Character, Integer> map = new HashMap<>();
// if (...) // 如果发现k,则k在Map中的值加1。没一开始没有k,则从0开始加1。(相当于给了key在Map中的一个初试值)map.put('k', map.getOrDefault('k', 0) + 1);
复制代码
containsKey
.containsKey(Key key); // 在Map中若存在key,则返回true,否则返回false --- O(1)
复制代码
containsValue
.containsValue(V value); // 在Map中若存在value,则返回true,否则返回false --- O(1)
复制代码
keySet
.keySet(); // 返回一个Set,这个Set中包含Map中所有的Key --- O(1)// For example:
// We want to get all keys in Map
// Map<Character, Integer> map = new HashMap<>();
for (Character key : map.keySet()) {// Operate with each key
}
复制代码
values
.values(); // 返回一个Collection<v>,里面全是对应的每一个value --- O(1)// For example:
// We want to get all values in Map
// Map<Character, Integer> map = new HashMap<>();
for (Integer value : map.values()) {// Operate with each values
}
复制代码
isEmpty
.isEmpty() // 若Map为空返回true, 否则返回false --- O(1)
复制代码
size
.size() // 返回Map中中键值对<K, V>的个数 --- O(1)
复制代码
字符串
String
性质:不可变量(相当于只读final修饰) 每个位置元素是个char
初始化
字符串复制初始化
String s = "abc";
复制代码
基于另外一个字符串
// s = "abc"
String s2 = new String(s);
复制代码
基于char[]
// s = "abc";
// char[] c = s.toCharArray();
String s3 = new String(c);// 可以偏移
// public String(char value[], int offset, int count)
String s4 = new String(c, 1, 2); // [offset, offset + count)// 把char[] 变成字符串
char[] ch = {'a', 'b', 'c'};
String.valueOf(ch);
复制代码
类方法
String.valueOf( 一个参数Object/基本数据类型 )
返回传入参数obj的toString(),若为空返回字符串"null"。 若为基本类型调用其 包装类的toString方法(Integer.toString(i)
)
instance方法
方法: charAt, length, substring, equals, indexOf, lastIndexOf, replace, toCharArray, trim, split, toLowerCase, toUpperCase
charAt
.charAt(int index); // 返回index位置的char --- O(1)
复制代码
length
.length(); // 返回字符串长度 --- O(1)
复制代码
substring
.substring(int beginIndex, int endIndex); // 返回字符片段[beginIndex, endIndex) --- O(n).substring(int beginIndex); // 返回字符片段[beginIndex, end_of_String) 就是从beginIndex开始后面的 ---- O(n)
复制代码
indexOf 是(暴力查找字符串,不是KMP)
.indexOf(String str) // 返回str第一个出现的位置(int),没找到则返回-1。 --- O(m * n) m为原串长度, n为str长度
// (假如要找一个字符char c,str可以表示成String.valueOf(c),然后作为参数传进去.s.indexOf(String str, int fromIndex); // 同上,但从fromIndex开始找 --- O(m * n)
复制代码
lastIndexOf
.lastIndexOf(String str); // 返回str最后出现的位置(int),没找到则返回-1。 --- O(m * n) m为原串长度, n为str长度
// (假如要找一个字符char c,str可以表示成String.valueOf(c),然后作为参数传进去..lastIndexOf(String str, int fromIndex); // 同上,
//但从fromIndex开始从后往前找 [0 <- fromIndex] --- O(m * n)
复制代码
replace 只能换char
.replace(char oldChar, char newChar); // 返回一个新字符串String,其oldChar全部变成newChar --- O(n)
复制代码
toCharArray
.toCharArray(); // 返回char[] 数组。 把String编程字符数组 --- O(n)
复制代码
trim 去除前后空格
.trim(); // 返回去除前后空格的新字符串 --- O(n)
复制代码
split 以什么分开
.split(String regex); // 返回 String[],以regex(正则表达式)分隔好的字符换数组。 ---- O(n)// For example
// 从非"/"算起 若"/a/c" -> 会变成"" "a" "c"
String[] date = str.split("/"); // date[0]:1995 date[1]:12 date[2]:18 --- O(n)
复制代码
toLowerCase, toUpperCase 转换大小写
s = s.toLowerCase(); // 返回一个新的字符串全部转成小写 --- O(n)
s = s.toUpperCase(); // 返回一个新的字符串全部转成大写 --- O(n)
复制代码
技巧
通过+
连接其他字符串, 但是是两个组成一个新的字符串,有开销。最好用StringBuilder
StringBuilder
初始化
StringBuilder sb = new StringBuilder();
复制代码
instance方法
方法: append, charAt, length, setCharAt, insert, deleteCharAt, delete, reverse, toString
charaAt
.charAt(int index); // 返回index位置的char --- O(1)
复制代码
length
.length(); // 返回缓冲字符串长度 --- O(1)
复制代码
setCharAt
.setCharAt(int index, char ch); // 设置index位置的char为ch --- O(1)
复制代码
insert
.insert(int offset, String str); // 在offer位置的插入字符串str--- O(m + n)
复制代码
deleteCharAt
.deleteCharAt(int index); // 删除index位置的char --- O(n).deleteCharAt(sb.length() - 1); // 删除最后一个char --- O(1)
复制代码
delete
.delete(int start, int end); // 删除[start, end)位置的char --- O(n)
复制代码
reverse
.reverse(); // 反转缓存字符串 --- O(n)
复制代码
toString
.toString(); // 返回一个与构建起或缓冲器内容相同的字符串 --- O(n)
相关文章:
刷题Java常用方法总结
刷题Java常用方法总结 文章目录刷题Java常用方法总结快速查看:静态数组 Static Array初始化instance属性length技巧Arrays.sort从小到大排序Arrays.fill填满一个数组Arrays.copyOf / arr.clone()复制一个数组(二维数组也可以)动态数组 List & Dynamic Array初始化常规 - Ar…...

大数据技术之Hive
第1章Hive基本概念1.1 Hive1.1.1 Hive的产生背景在那一年的大数据开源社区,我们有了HDFS来存储海量数据、MapReduce来对海量数据进行分布式并行计算、Yarn来实现资源管理和作业调度。但是面对海量数据和负责的业务逻辑,开发人员要编写MR来对数据进行统计…...
第33篇:Java集合类框架总结
目录 1、集合概念 2、集合与数组的区别 3、集合框架的特性 1)高性能 2)可操作...

数据结构 | 栈的中缀表达式求值
目录 什么是栈? 栈的基本操作 入栈操作 出栈操作 取栈顶元素 中缀表达式求值 实现思路 具体代码 什么是栈? 栈是一种线性数据结构,具有“先进后出”(Last In First Out, LIFO)的特点。它可以看作是一种受限的…...

vue2前端实现html导出pdf功能
1. 功能实现方案 1.html转换成canvas后生成图片导出pdf(本文选用) html转canvas插件:html2canvas是一款将HTML代码转换成Canvas的插件;canvas生成pdf:jsPDF是一个使用Javascript语言生成PDF的开源库 2.HTML代码转出…...

用 ChatGPT 辅助学好机器学习
文章目录一、前言二、主要内容🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、前言 探索更高效的学习方法可能是有志者共同的追求,用好 ChatGPT,先行于未来。 作为一个人工智能大语言模型,ChatGPT 可以在帮助初…...

【动态规划】最长上升子序列(单调队列、贪心优化)
Halo,这里是Ppeua。平时主要更新C语言,C,数据结构算法......感兴趣就关注我吧!你定不会失望。 🌈个人主页:主页链接 🌈算法专栏:专栏链接 我会一直往里填充内容哒! &…...

海思SD3403/SS928V100开发(7)mcp2515-SPI转CAN驱动开发
1. 前言 需求: 需要一路can进行收发 分析: 根据目前使用较多的方案是使用主控端SPI接口 接入MCP2515芯片进行CAN协议转换 硬件: MCP2515->SPI2->SS928 2. Uboot开发 2.1 pinmux复用配置 2.1.1 修改uboot参数表 路径: osdrv/tools/pc/uboot_tools/ SS928V100…...

【安卓源码】SurfaceFlinger 启动及其与应用通信
1. surfaceFlinger 初始化和消息队列处理机制 surfaceflinger 的makefile 文件 /frameworks/native/services/surfaceflinger/Android.bp 235 cc_binary { 236 name: "surfaceflinger", 237 defaults: ["libsurfaceflinger_binary"], 238 i…...

springboot车辆充电桩
sprinboot车辆充电桩演示录像2022开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:ecli…...

linux进程和进程通信编程(1)
What makes the desert beautiful is that somewhere it hides a well. 沙漠之所以美丽,是因为在它的某个角落隐藏着一口井. linux进程和进程通信编程(1)1.什么是进程2.进程id(pid)3.进程间通信的方法管道信号IPCSocket4.创建进程forkfork有三个返回值父…...

操作系统(1.3)--习题
一、课堂习题 1、一个作业第一 次执行时用了5min ,而第二次执行时用了6min,这说明了操作系统的( )特点。 A、并发性 B、共享性 C、虚拟性 D、不确定性 D 2、在计算机系统中,操作系统是( )。 A、处于裸机之上的第一层软件 B、处于硬件之下的低层软件 C、处于应用软件之上的系统软…...

刷题笔记之十三(有假币、最难的问题、因子个数)
目录 1. 求正数数组的最小不可组成和 2. 有假币 3. 继承时先调用父类的构造方法;类中的成员变量的初始化操作都在构造方法时进行 4. 学会并理解装箱拆箱,注意new出来的也可以拆!! 5. getDeclaredMethods()是标识类或接口的声明成员(这个表示public private 包访问权限 pro…...

5个代码技巧,加速你的Python
5个代码技巧,加速你的Python 人生苦短,快学Python! Python作为一种功能强大的编程语言,因其简单易学而受到很多初学者的青睐。它的应用领域又非常广泛:科学计算、游戏开发、爬虫、人工智能、自动化办公、Web应用开发…...

字节跳动软件测试岗,前两面过了,第三面HR天坑!竟然跟我说……
阎王易见,小鬼难缠。我一直相信这个世界上好人居多,但是也没想到自己也会在阴沟里翻船。我感觉自己被字节跳动的HR坑了。在这里,我只想告诫大家,offer一定要拿到自己的手里才是真的,口头offer都是不牢靠的,…...

[数据分析与可视化] Python绘制数据地图1-GeoPandas入门指北
本文主要介绍GeoPandas的基本使用方法,以绘制简单的地图。GeoPandas是一个Python开源项目,旨在提供丰富而简单的地理空间数据处理接口。GeoPandas扩展了Pandas的数据类型,并使用matplotlib进行绘图。GeoPandas官方仓库地址为:GeoP…...

ChatGPT加强版GPT-4面世,打工人的方式将被颠覆
🔗 运行环境:chatGPT,GPT-4 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 #### 防伪水印——左手の明天 #### 💗 大家好&#…...

Python逆向及相关知识
今天第二次看见python字节码的逆向题,然后发现了一个介绍Python逆向的文章,所以把文章里的内容简单整理记录一下。 文章参考:https://www.cnblogs.com/blili/p/11799398.html Python运行原理: 一.什么是Python Python 是一种解…...

Python基础语法、注意点加实例全解
本篇文章我们讲解Python最基础语法,包含:数据类型、注释、变量、类型转换、命名规范、运算符、字符串拼接、字符串格式化、if条件判断、while循环、for循环、函数、读取文件、写入文件、异常捕获、包导入等。通过讲解语法注意事项实例代码详解࿰…...
ETH RPC搭建
配置选择先是看了aws、谷歌云、阿里云这个配置都要1-2wrmb一个月,太贵了问了很多朋友,打算用hetzner,50欧一个月足以我选的配置:64gb,2tb ssd开好后在邮箱收到信息链接后按以下步骤安装系统:https://0o0.me…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...

人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.
ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #:…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...