【数据结构】二叉树的层序遍历(四)

【数据结构】二叉树的层序遍历(四) 一,层序遍历概念 二,层序遍历的实现  1,层序遍历的实现思路  2,创建队列  Queue.h  Queue.c  3,创建二叉树  BTree.h  BTree.c  4,层序遍历的实现
分类: 编程语言 发布时间: 09-17 06:08 阅读次数: 0

百度面经整理

长连接和短连接的区别在于连接的持续时间。在多线程中,每个线程都有自己的执行路径,当一个线程占用了临界区资源时,其他需要使用这个资源的线程都必须在这个临界区上等待。HashMap:HashMap是基于哈希表实现的键值对集合,它不保证键值对的顺序,也不允许重复的键(重复会覆盖)。LinkedList:基于链表实现的双向链表,它提供了快速的插入和删除元素的能力,但在随机访问和修改元素时性能较差。用代码打开文件是通过编程语言中的文件操作函数来实现的,而用鼠标打开文件则是通过操作系统提供的文件选择对话框来实现的。
分类: 编程语言 发布时间: 09-17 06:07 阅读次数: 0

java学习-笔记(1)

知识点一:公共字段填充知识点二:ThreadLocal类知识点三:Super关键字知识点四:MultipartFile工具类知识点五:Map的6种遍历方式知识点六:JAVA的流式编程知识点七:postMapping、putMapping、getMapping、deleteMapping
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--redis(1)

类型底层应用场景StringSDS数组验证码、计数器、订单重复提交令牌、热点商品卡片、分布式锁ListQuickList简单队列、最新评论列表、非实时排行榜:定时计算榜单Hash哈希购物车、个人信息、商品详情SetinSet交集、并集、差集操作,例如朋友关系、去重Sorted set跳跃表去重后排序,适合排名场景。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--redis(2)

官方FAQ表示,因为Redis是基于内存的操作,CPU不是Redis的瓶颈,Redis的瓶颈最有可能是机器内存的大小或者网络带宽。既然单线程容易实现,而且CPU不会成为瓶颈,那就顺理成章地采用单线程的方案了Redis利用队列技术将并发访问变为串行访问1)绝大部分请求是纯粹的内存操作2)采用单线程,避免了不必要的上下文切换和竞争条件。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--多线程(1)

1.创建一个继承于Thread类的子类2.重写Thread类的run() --> 将此线程执行的操作声明在run()中3.创建Thread类的子类的对象4.通过此对象调用start():start()作用①启动当前线程 ② 调用当前线程的run()
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--多线程(2)

在创建新线程的时候,是要获取全局锁的,这个时候其它的就得阻塞,影响了整体效率。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--多线程(3)

synchronized锁住的资源只有两类:一个是。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--多线程(4)

原子性原子性是指一个线程的操作是不能被其他线程打断,同一时间只有一个线程对一个变量进行操作。在多线程情况下,每个线程的执行结果不受其他线程的干扰,比如说多个线程同时对同一个共享成员变量n++100次,如果n初始值为0,n最后的值应该是100,所以说它们是互不干扰的,这就是传说的中的原子性。但n++并不是原子性的操作,要使用AtomicInteger保证原子性。可见性可见性是指某个线程修改了某一个共享变量的值,而其他线程是否可以看见该共享变量修改后的值。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

医学图像分割新方法:超越自注意力: 用于医学图像分割的可变形大核注意力

以上就是今天要讲的内容,关注公众号 CV算法小屋 了解更多前沿AIGC技术,帮助你更好的创业,发论文,找工作校招找工作没有亮眼的项目怎么办加技术交流群:加我微信 Lh1141755859。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--网络基础篇(1)

最大值1500 称为以太网的最大传输单元(MTU),不同的网络类型有不同的MTU,如果一个数据包从以太网路由到拨号链路上,数据包度大于拨号链路的MTU了,则需要对数据包进行分片fragmentation)。它指定了数据报的生存时间。序号用来标识从T C P发端向T C P收端发送的数据字节流,它表示在这个报文段中的的第一个数据字节。TCP将接收到的数据包保存在接收缓存里,如果TCP接收数据包到缓存的速度大于应用程序从缓存中读取数据包的速度,多个包就会被缓存,应用程序就有可能读取到多个首尾相接粘到一起的包。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--网络基础篇(2)

在页式存储管理中,将程序的逻辑地址划分为固定大小的页(page),而物理内存划分为同样大小的页框,程序加载时,可以将任意一页放入内存中任意一个页框,这些页框不必连续,从而实现了离散分离。简单来说段⻚式管理机制就是把主存先分成若⼲段,每个段⼜分成若⼲⻚,也就是说 段⻚式管理机制 中段与段之间以及段的内部的都是离散的。互斥条件:进程对所分配到的资源不允许其他进程访问,若其他进程访问该资源,只能等待至占有该资源的进程释放该资源;可剥夺资源:即当进程新的资源未得到满足时,释放已占有的资源,从而破坏不可剥夺的条件,
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--mysql(1)

数据结构存储,决定了数据查找和操作时的效率,包括时间复杂度和空间复杂度,而在取舍的时候,也无非就是时间换空间,空间换时间的权衡罢了,所以,这就很好的解释了,为什么MySQL在索引的底层设计上,选用了B+树,而没有选用B-树,或是红黑树,AVL树等等其他数据结构。通常在B+Tree上有两个头指针,一个指向根节点,另一个指向关键字最小的叶子节点,而且所有叶子节点(即数据节点)之间是一种链式环结构,因此可以对B+Tree进行两种查找运算:一种是对于主键的范围查找的分页查找,另一种是从根节点开始,进行随机查找。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--mysql(2)

哈希索引用索引列的值计算该值的hashCode,然后在hashCode相应的位置存执该值所在行数据的物理位置,因为使用散列算法,因此访问速度非常快,但是一个值只能对应一个hashCode,而且是散列的分布方式,因此哈希索引不支持范围查找和排序的功能。: 指一个事务内多次读同一个事务,在这个事务还没有结束的时候,另外一个事务也访问该数据。: 一个事务修改一个数据的时,另外一个事务也读取到这个数据,当第一个事务对他进行修改后,第二个事务也进行了修改,这样第一个事务的修改结果就丢失了,因此被称为丢失修改。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--mysql(3)

一个常见又非常头疼的问题就是limit 2000000,10,此时需要MySQL排序前2000010记录,仅仅返回2000000-2000010的记录,其他记录丢弃,查询排序的代价非常大。要选择更快速的硬件设备,如更快的磁盘、更快的CPU和更多的内存等等。: 没有not null约束: InnoDB引擎会遍历整张表把每一行的字段值都取出来,返回给服务层,服务层判断是否为null,不为null,计数累加。InnoDB的行锁是针对索引加的锁,不是针对记录加的锁,并且该索引不能失效,否则会从行锁升级为表锁。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--mysql(4)

当主库每提交一个事务后,不会立即返回,而是等待其中一个从库接收到Binlog并成功写入Relay-log中才返回客户端,通过一份在主库的Binlog,另一份在其中一个从库的Relay-log,可以保证了数据的安全性和一致性。在异步复制中,主库执行完操作后,写入binlog日志后,就返回客户端,这一动作就结束了,并不会验证从库有没有收到,完不完整,所以这样可能会造成数据的不一致。可做读写分离,一个写库,一个或多个读库,在不同的服务器上,充分发挥服务器和数据库的性能,但要保证数据的一致性。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

2024年java面试--mysql(5)

第一次请求时,该订单的状态是已支付,值是2,所以该update语句可以正常更新数据,sql执行结果的影响行数是1,订单状态变成了3。后面有相同的请求过来,再执行相同的sql时,由于订单状态变成了3,再用status=2作为条件,无法查询出需要更新的数据,所以最终sql执行结果的影响行数是0,即不会真正的更新数据。事务1已经获取数据A的写锁,想要去获取数据B的写锁,然后事务2获取了B的写锁,想要去获取A的写锁,相互等待形成死锁。3 判断操作影响行数,如果影响了1行,说明当前操作成功,可以进行其他数据操作。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

面试题:有了 for 循环 为什么还要 forEach ?

再来聊聊究竟什么是迭代器,还记得之前提到的 Generator 生成器,当它被调用时就会生成一个迭代器对象(Iterator Object),它有一个 .next()方法,每次调用返回一个对象{value:value,done:Boolean},value返回的是 yield 后的返回值,当 yield 结束,done 变为 true,通过不断调用并依次的迭代访问内部的值。map:map 最慢的原因是因为 map 会返回一个新的数组,数组的创建和赋值会导致分配内存空间,因此会带来较大的性能开销。
分类: 编程语言 发布时间: 09-17 05:52 阅读次数: 0

springboot(jeesite)跨域解决Cross origin requests are only supported for protocol schemes:

Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome, https, chrome-untrusted。错误
分类: 企业开发 发布时间: 09-17 05:43 阅读次数: 0

jeesite自定义数据字典,自定义字典表,自带树选择数据源(保姆级图文教程)

jeesite自定义数据字典,自定义字典表,自带树选择数据源(保姆级图文教程)
分类: 企业开发 发布时间: 09-17 05:43 阅读次数: 0