后端
11、ArrayList和linkedList的区别
ArrayList和linkedList的区别
Array(数组)是基于索引(index)的数据结构,它使用索引在数组中搜索和读取数据是很快的。
Array获取数据的时间复杂度是O(1),但是要删除数据却是开销很大,因为这需要重排数组中的所有数据, (因为删除数据以后, 需要把后面所有的数据前移).
缺点: 数组初始化必须指定初始化的长度, 否则报错.
例如:
List—是一个有序
Spring 路由匹配机制详解:时间复杂度从 O(n) 降至 O(log n)
🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇
剑指offer(第2版)
4/75
03.找出数组中重复的数字
03
try1: 遍历 超时
class Solution:
def findRepeatNumber(self, nums: List[int]) -> int:
for i in range(len(nums)-1):
for j in range(i+1,len(nums)): # 第一
04.《JavaEE 学习笔记》MVC设计模式
参考链接:
1、Web应用运行流程:
(1)浏览器发送请求到收到响应,简要的过程如下: 浏览器发送请求后,由Web.xml中规定的协议,进入TomCat中
神秘的volatile关键字
前言
volatile关键字是面试中常问的知识点,包括三点:可见性、有序性、非原子性。接下来就说一下这三点。
JMM(Java Memory Model - Java内存模型)
每个 Java 线程都有⾃⼰的⼯作内存。操作数据,⾸先从主内存中读,得到⼀份拷⻉,操作完毕后再写回主内存
JMM可能带来可⻅性、原⼦性和有序性问题
可⻅性:是指某个线程对主内存内容的修改,应该⽴刻通知其它线程
有
第二章 性能瓶颈的分析和定位(8)
剖析工具(Profiler Tools)
至于工具,看起来是没有问题,Qt Creator已经在Analyze菜单中集成了——QML profiler,CPU, 函数(Function) Profiler,以及Memory Analyzer(内存分析器)。但遗憾的是,这些工具大多数只能在Linux上使用,因为Qt Creator使用的工具是valgrind, 其在Windows下是
LeetCode #1359 Count All Valid Pickup and Delivery Options 有效的快递序列数目
1359 Count All Valid Pickup and Delivery Options 有效的快递序列数目
Description:
Given n orders, each order consist in pickup and delivery services.
Count all valid pickup/delivery possible sequences such that
Android Kotlin面试题
1.1 请简述一下什么是 Kotlin?它有哪些特性?
kotlin和java一样也是一门jvm语言最后的编译结果都是.class文件,并且可以通过kotlin的.class文件反编译回去java代码,并且封装了许多语法糖,其中我在项目中常用的特性有
扩展,(使用非集成的方式 扩张一个类的方法和变量):比方说 px和dp之间的转换 之前可能需要写个Util现在,通过扩展Float的变量 最后调用
