摘要: (放一些看过的写得比较好的博文) 推荐阅读: 浅析Java中的final关键字 使用java.util.List.subList时最好小心点 + Java: split a List into two sub-Lists? (《Java编程思想(第4版)》第11章第7题,不能直接用lst.remov 阅读全文
posted @ 2018-09-10 16:17 华仔要长胖 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 请实现一个函数,把字符串中的每个空格替换成"%20"。例如输入“We are happy.”,则输出“We%20are%20happy.”。 思路 首先要询问面试官是新建一个字符串还是在原有的字 阅读全文
posted @ 2018-09-10 15:34 华仔要长胖 阅读(2891) 评论(0) 推荐(0) 编辑
摘要: 本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路 查找整数时,如果从左 阅读全文
posted @ 2018-09-10 14:48 华仔要长胖 阅读(1738) 评论(0) 推荐(0) 编辑
摘要: 本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 在一个长度为n+1的数组里的所有数字都在1到n的范围内,所以数组中至少有一个数字是重复的。请找出数组中任意一个重复的数字,但不能修改输入的数组。例如,如果输入长度为8的数组{2, 3, 5, 4 阅读全文
posted @ 2018-07-16 17:29 华仔要长胖 阅读(3924) 评论(0) 推荐(0) 编辑
摘要: 本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 在一个长度为n的数组里的所有数字都在0到n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组 阅读全文
posted @ 2018-07-16 17:03 华仔要长胖 阅读(11655) 评论(2) 推荐(2) 编辑
摘要: 基本概念 在信号量机制中,每个要访问临界资源的进程都必须自备同步的PV操作,大量分散的同步操作会给系统管理带来麻烦,且容易因为同步操作不当而导致系统死锁。于是便产生了一种新的进程同步工具——管程(Monitors)。 管程(Monitors):是一个资源管理模块,其中包含了共享资源的数据结构,以及由 阅读全文
posted @ 2018-07-11 17:04 华仔要长胖 阅读(6204) 评论(1) 推荐(0) 编辑
摘要: 本文根据《大话数据结构》一书,实现了Java版的一个简单的散列表(哈希表)。 基本概念 对关键字key,将其值存放在f(key)的存储位置上。由此,在查找时不需比较,只需计算出f(key)便可直接取得所查记录。这个函数 f() 就叫做散列函数,按这个思想建立的表称为散列表。 散列技术即是一种存储方法 阅读全文
posted @ 2018-07-09 19:33 华仔要长胖 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 信号量机制 基本概念 信号量:信号量(Semaphores)的数据结构由一个值value和一个进程链表指针L组成,信号量的值代表了资源的数目,链表指针链接了所有等待访问该资源的进程。 PV操作:通过对信号量S进行两个标准的原子操作(不可中断的操作)wait(S)和signa(S),可以实现进程的同步 阅读全文
posted @ 2018-07-08 17:10 华仔要长胖 阅读(3064) 评论(0) 推荐(0) 编辑
摘要: 判断方法(奇数): 错误判断方法:通过a%2==1来判断。(原因:负奇数对2取余的结果为-1) 正确判断方法:(1) 通过a%2!=0来判断。 (2) 通过(a&1)==1来判断。(推荐使用,位操作,性能更优) Java代码: ————利用“a%2!=0”判断———— 0为偶数 11为奇数 -11为 阅读全文
posted @ 2018-07-07 12:07 华仔要长胖 阅读(39703) 评论(0) 推荐(2) 编辑
摘要: 本文根据《大话数据结构》一书及网络资料,实现了Java版的平衡二叉树(AVL树)。 平衡二叉树介绍 在上篇博客中所实现的二叉排序树(二叉搜索树),其查找性能取决于二叉排序树的形状,当二叉排序树比较平衡时(深度与完全二叉树相同,[log2n]+1),时间复杂度为O(logn);但也有可能出现极端的斜树 阅读全文
posted @ 2018-07-05 15:55 华仔要长胖 阅读(582) 评论(0) 推荐(0) 编辑