上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 17 下一页
摘要: 数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从下标0开始计数)是5,第13位是1,第19位是4,等等。 请写一个函数,求任意第n位对应的数字。 leetcode 解体思路:找规律。 相同位数的数字数量的递增关系是10, 90, 900, 9 阅读全文
posted @ 2020-11-12 17:07 lippon 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 leetcode 解题思路:依次遍历每一个位的情况。即统计,小于当前数字的数中,每一个位为1的数量。 当前位是0:则不存小于去掉高位,当前位 阅读全文
posted @ 2020-11-12 16:53 lippon 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 假设你正在读取一串整数。每隔一段时间,你希望能找出数字 x 的秩(小于或等于 x 的值的个数)。请实现数据结构和算法来支持这些操作,也就是说: 实现 track(int x) 方法,每读入一个数字都会调用该方法; 实现 getRankOfNumber(int x) 方法,返回小于或等于 x 的值的个 阅读全文
posted @ 2020-11-12 15:07 lippon 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 什么是中断 Java的一种机制,用于一个线程去暂停另一个线程的运行。就是一个正在运行的线程被其他线程给打断,停止运行挂起了。 我觉得,在Java中,这种中断机制只是一种方便程序员编写进程间的通信罢了。 如何中断 interrupt() 其他线程调用这一线程的这一方法来对其进程中断。isInterru 阅读全文
posted @ 2020-11-12 10:03 lippon 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 线程 什么是线程 操作系统调度的最小单元就是线程,也叫轻量级进程。 为什么要使用多线程 多线程程序能够更有效率地利用多处理器核心。用户响应时间更快。方便程序员将程序模型映射到Java提供的多线程编程模型上。 线程的状态 1. 初始态 NEW 线程被构建,但是还没有调用start()方法调用。 2 运 阅读全文
posted @ 2020-11-12 09:25 lippon 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。 leetcode 解题思路:中序遍历链表,保留上一个节点,每次遍历到一个节点的时候,将上一个节点right指向当前节点,再将当前节点的left指向上个节点。 第一次枚举到left的 阅读全文
posted @ 2020-11-11 17:21 lippon 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或者 null。 链接:leetcode 解题思路:不同于简单列表的复制,这个多了一个随机指针。如果是简单列表,直接构造一个新 阅读全文
posted @ 2020-11-11 16:51 lippon 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 稀疏数组搜索。有个排好序的字符串数组,其中散布着一些空字符串,编写一种方法,找出给定字符串的位置。 leetcode 解题思路:主要还是利用二分的思想,因为排除空格,这个数组还是有序的。但是需要在搜索的时候,跳过空格。 怎么跳呢?首先需要保证二分的两段元素不是空格,然后保证枚举的中间元素不能是空格。 阅读全文
posted @ 2020-11-11 15:27 lippon 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 什么是JMM JMM就是Java内存模型。目的是为了屏蔽系统和硬件的差异,让同一代码在不同平台下能够达到相同的访问结果。规定了线程和内存之间的关系。 内存划分 JMM规定了内存主要划分为主内存和工作内存。 如果Java线程都去操作主内存,对性能的影响就很大,如果每个线程都具有自己的工作内存,然后再将 阅读全文
posted @ 2020-11-11 10:08 lippon 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 链接: leetcode. 解题思路:从后往前遍历,检测到第一个如果前一元素小于当前元素,那就说明下 阅读全文
posted @ 2020-11-10 10:57 lippon 阅读(127) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 17 下一页