首页
学习
活动
专区
工具
TVP
发布

D·技术专栏

专栏作者
68
文章
53248
阅读量
13
订阅数
时间复杂度
很多人包括我自己都有一个疑问,就是现在的计算机的硬件性能已经很强大了,所以对于性能或者说时间复杂度上还用关心吗,答案是需要的。 比如有这样一个例子,在一台很久的机器和一台处理性能高100倍的新机器,旧机器执行算法A时间复杂度为O(n),新机器执行算法B的时间复杂度为O(n2)。下面表格做下对比,因为性能差100倍,所以旧机器时间*100
OPice
2021-09-07
5580
观察者模式观察者模式
观察者属于行为模式,当一个对象改变时,会通知订阅者做相应的处理。 是一种低耦合的方式,观察者和被观察者者之间不互相依赖。 缺点或者说需要注意的点:1、如果观察者很多,要通知所有的观察者需要很多时间 2、观察者之间互相循环调用,会导致系统崩溃。
OPice
2021-09-07
7820
建造者模式
  将多个简单对象一个个的构建成复杂对象的过程,提供了一种对象创建或者说是组合的最佳方式。   主要解决的问题,有时候一个“复杂对象”的构造,可能由于需求不同,需要各部分子对象不同组合,但是不同的组合算法是稳定的。简单的例子,饭店有多种不一样的菜式,荤素热凉,但是不一样的菜品组合在一起就是不一样的套餐。   应用实例:StringBuilder、Function的compose。
OPice
2021-09-07
2310
死锁
简单的说:线程1持有A锁,线程2持有B锁;线程1尝试获取B锁,线程2尝试获取A锁。两个线程各持有了一把锁,同时想获取对方的锁,自身的又不释放。
OPice
2021-09-07
5430
单例模式
  单例模式是一种对象创建的方式,特点是一个类只负责创建自己的对象,而且只保证创建一个,同时只提供一直访问方式。
OPice
2021-09-07
5660
python爬取neuxs文件
&snap;&snap;公司neuxs仓库中maven-metadata 文件经常被删掉,导致开发中拉取不到依赖问题。刚开始怀疑是本地settings问题或者是neuxs有定时任务自动清理。为了验证这个问题,决定每天晚上和第二天早上拉取所有文件做下对比。
OPice
2021-04-01
9440
工具使用
<colgroup><col span="1" width="134"><col span="1" width="134"><col span="1" width="135"></colgroup> | Type | Symbol | Drawing |
OPice
2020-06-28
5300
Java开发工具合集(mac版)
开发环境 JDK 8 1、官网下载安装 Java SE Development Kit 8u251 2、配置环境变量 cd ~/ touch .bash_profile (.bash_profile存在省略此步骤) open -e .bash_profile 打开.bash_profile 配置JAVA_HOME 替换成自己jdk安装目录 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents
OPice
2020-06-04
2.5K0
数据结构之链表篇
2.从内存结构来看,链表的内存结构是不连续的内存空间,是将一组零散的内存块串联起来,从而进行数据存储的数据结构。
OPice
2020-04-23
3740
整数反转
限制:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。
OPice
2020-04-10
4710
二叉树遍历
题目 给定一个二叉树,返回它的中序 遍历。 示例: 输入: [1,null,2,3] 1 2 / 3 输出: [1,3,2] 解答 第一种、递归遍历 public static List<Integer> inorderTraversal(TreeNode root) { List<Integer> nodes = new ArrayList<>(); return helper(root, nodes); } public static Li
OPice
2020-04-02
3590
最长子字符串
1、 第一种方式,时间复杂度 n3,这种方式在实际情况下是不可取的。 2、时间复杂度:O(2n) = O(n)O(2n)=O(n),在最糟糕的情况下,每个字符将被 ii 和 jj 访问两次。空间复杂度:O(min(m, n))O(min(m,n)),与之前的方法相同。滑动窗口法需要 O(k)O(k) 的空间,其中 kk 表示 Set 的大小。而 Set 的大小取决于字符串 nn 的大小以及字符集 / 字母 mm 的大小。
OPice
2020-04-01
3510
卡牌分组
每组都有 X 张牌。 组内所有的牌上都写着相同的整数。 仅当你可选的 X >= 2 时返回 true。
OPice
2020-04-01
6020
两数相加
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。
OPice
2020-04-01
9090
车(ju)一步吃卒
题目: 在一个 8 x 8 的棋盘上,有一个白色车(rook)。也可能有空方块,白色的象(bishop)和黑色的卒(pawn)。它们分别以字符 “R”,“.”,“B” 和 “p” 给出。大写字符表示白棋,小写字符表示黑棋。
OPice
2020-03-27
5410
交换排序之快速排序
通常是以第一个元素为基准元素开始,然后从头部和尾部开始遍历,左边都是比基准元素小,右边是比基准元素大。
OPice
2020-03-24
4300
最小的k个数
题目 输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4 示例: 输入:arr = [3,2,1], k = 2 输出:[1,2] 或者 [2,1] 条件: 1、0 <= k <= arr.length <= 10000 2、0 <= arr[i] <= 10000 解答 //利用java自带函数 class Solution { public int[] getLeastNumbers(int[] arr,
OPice
2020-03-23
4250
链表中间数
1、遍历的方式 时间复杂度:O(N) 空间复杂度:O(N) 2、快慢指针方式 时间复杂度:O(N) 空间复杂度:O(1)
OPice
2020-03-23
4650
EagleEye全链路追踪
  当下微服务盛行的阶段,系统之间服务的依赖和复杂性也逐步提高。所以要保证业务的正常运行和团队的SLA,就需要对线上问题的避免和快速定位。这时就体现日志的重要性,问题是日志如何记录,当一个服务被不停调用时,快速定位一个请求就变的很奢侈。包括用户的一次操作,微服务之间有可能进行数百次网络调用,如何定位哪些步骤慢。为了解决这样的问题,阿里的EagleEye出现了。
OPice
2020-02-13
3.3K0
Idea插件的安装方法
IDEA 作为java开发者下载率最高的工具,除了其强大的功能外,还支持插件的方式,让开发使用更加得心应手。
OPice
2020-02-13
9010
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档