LiuZhian's Blog

Welcome to my home~

Leetcode 48- 向右旋转图片90°

水题,先转置再左右对称

Leetcode 48- 向右旋转图片90°1. 题目描述很简单的需求,将一个二维数组向右旋转90°,栗子:12345678910111213给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2], [9,6,3]]:anger:要求: 必须就地变换,只能开O(1)级别的空间。 2. 思路......

Leetcode 39- 组合总和

Leetcode 39- 组合总和1. 题目描述给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 target)都是正整数。 解集不能包含重复的组合。 123456789101112131415161718示......

Leetcode 33- 搜索旋转排序数组

Leetcode 33- 搜索旋转排序数组1. 题目描述假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设数组中不存在重复的元素。 你的算法时间复杂度必须是 O(log n) 级别。 1234567......

一次焦虑后的自我审查

又是一个转折点

眼看着,周围同学很多都找到了心仪的工作,有那么一瞬间觉得对未来很茫然,自己读研是否真的值得?也在想,自己读研的目的是什么?回想自己埋下的兴趣,计算机视觉、图像处理,随着越来越多的人猛扎入这一领域(好像我也是大浪潮中的一位?),是否自己以后真的有竞争力?未来的局势又是如何? 非常感谢我哥,每次和他聊天都感觉有一种真实且温馨的感觉,也总是能为我排解一些心中的忧虑,我估计他也看不到我正在写的这些,......

Leetcode 31- 下一个排列

Next permutation

Leetcode 31- 下一个排列1. 题目描述实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1231,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1 2.......

CPU调度

@[toc] CPU调度基本概念 进程切换进程切换即CPU资源在当前占用者之间的切换,也就是保存当前进程在PCB中的执行上下文(context),然后再恢复下一个进程的执行上下文。 CPU调度CPU调度其实可以分为两个部分:①进程调度②CPU资源调度,前者就是从就绪进程队列中选取一个进程准备运行,后者是从多个可用的CPU资源中分配给进程。 内核调度进程的时机 进程从运行态切换到了等待......

磁盘的块级接口和文件级别接口

The following contents are from chapter 12 in book “Database design and implementation”. In book, it says that: 也就是说,扇区大小是磁盘的特性,每个磁盘出厂时可能不一样。而块大小是OS为了对用户透明化这种底层差异性而定义的,这是用户读写文件时的最小单元。 至于读写某个块中的内容,只......

信号量和管程

希望阅读本文后的你,可以更好的理解OS中的信号量和管程。如果你有任何疑惑,欢迎指出,因为很有可能是我的理解错误或者笔误。@[toc] 0. 相关概念回顾在OS引入多线程后,程序的多任务并发功能得到了良好的支持,但同时也带来了问题,那就是多线程并发会导致一些共享的资源产生竞争问题(例如对共享数据区的数据进行操作),而在计算机中,操作这种共享资源的代码块被称为临界区。为了解决这种竞争冲突,我们必......

OpenCV-py学习笔记(二)—— 核心运算/操作

@[TOC] 图像的算术运算1.饱和加 cv2.add()OpenCV中的add()函数是饱和运算,也就是说,如果两个8位整数相加,超过了255,自动会截断成255. 12345678>>> x = np.uint8([250])>>> y = np.uint8([10])>>> print cv2.add(x,y) # 250+10 =......

OpenCV-py学习笔记(四)—— 轮廓检测

@[toc]这几天一直在学习特征点检测、角点检测相关的内容,更新的略慢,这篇博文将主要介绍一下图像的轮廓方面的知识和openCV中的相关操作。 轮廓检测参考资料 OpenCV-Python Tutorial Computer Vision: Algorithms and Applications 0. 什么是轮廓?所谓轮廓,简单地可以解释为,一些连续的,沿着曲线边界的,点的集合,这些点拥有......