他山之金的专栏

吾志所向,一往无前

LeetCode 730. Count Different Palindromic Subsequences

QuestionGiven a string S, find the number of different non-empty palindromic subsequences in S, and return that number modulo 10^9 + 7.A subsequence ...

2018-05-01 21:25:29

阅读数 198

评论数 0

LeetCode 514. Freedom Trail && 动态规划与贪心算法的对比分析

QuestionIn the video game Fallout 4, the quest "Road to Freedom" requires players to reach a metal dial called the "Freedo...

2018-04-30 21:52:09

阅读数 78

评论数 0

LeetCode 410. Split Array Largest Sum

QuestionGiven an array which consists of non-negative integers and an integer m, you can split the array into m non-empty continuous subarrays. Write...

2018-04-27 11:35:57

阅读数 43

评论数 0

LeetCode 343. Integer Break

QuestionGiven a positive integer n, break it into the sum of at least two positive integers and maximize the product of those integers. Return the ma...

2018-04-21 10:15:26

阅读数 30

评论数 0

Leetcode 338. Counting Bits

QuestionGiven a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1's in their binary representat...

2018-04-19 21:16:34

阅读数 33

评论数 0

LeetCode 792. Number of Matching Subsequences

QuestionGiven string S and a dictionary of words words, find the number of words[i] that is a subsequence of S.Example :Input: S = "abcde&a...

2018-04-13 20:45:27

阅读数 50

评论数 0

LeetCode 689. Maximum Sum of 3 Non-Overlapping Subarrays

QuestionIn a given array nums of positive integers, find three non-overlapping subarrays with maximum sum.Each subarray will be of size k, and we wan...

2018-04-13 20:42:11

阅读数 87

评论数 0

中断的上半部分与下半部分

为了让内核能够快速响应硬件设备的消息,引入了中断机制。当硬件设备需要被处理(比如网卡收到了包),会发送一个异步的中断请求给处理器,然后处理器陷入中断上下文中,停止当前执行的程序,转而执行预先设定好的中断处理程序。完成中断处理程序之后给硬件设备一个信号再返回原先的工作继续。 在这套机制中,中断处理...

2017-01-11 19:13:31

阅读数 517

评论数 0

操作系统概念-内核同步-信号量

继续内核同步的话题。自旋锁是一种快速简单的锁实现,可以用于临界区很短的情况。但是由于等待锁的进程要不断检测锁的状态,会造成一定的CPU资源浪费。对于这个问题的解决方案就是信号量。信号量是一种睡眠锁,当一个进程试图获得正在使用的锁时,它不会像自旋锁那样原地等待,而是会被丢入一个等待队列,等到这个锁被...

2017-01-08 15:42:33

阅读数 255

评论数 0

操作系统概念-内核同步-自旋锁

有了原子操作,就可以了制作控制临界区的锁机制了。自旋锁就是其中的一个代表。 自旋锁机制可以用门和锁的例子来比喻。进程执行到某个临界区,相当于要进入一栋房子,这是进程会检查屋内是否有人(进程),如果屋内没有人,则直接拿起钥匙进入并把门锁上(进入临界区);如果屋内有人(进程),则在门口等待(忙等待)...

2017-01-06 15:47:44

阅读数 259

评论数 0

操作系统概念-内核同步-原子操作

在同一个操作系统中,不同的进程经常需要相互协同工作,协同的方法一般有两种,一是直接共享逻辑地址空间,二是通过文件或消息共享数据。如果共享逻辑地址空间,则在进程执行的时候有可能会发生多个进程同时访问同一个数据的冲突问题,特别是在多处理器的情况下。对于这类冲突,内核采用了一些方法进行进程同步,例如原子...

2016-12-28 21:09:02

阅读数 4692

评论数 0

Mac原生开启本地服务器的两种方法

由于做前端开发的时候,经常需要看自己做的网页效果,但是如果用到了本地资源,默认情况下是不允许浏览器加载的。当然可以通过设置(safari-开发-停用本地文件限制)来停用限制,但是这样做存在安全隐患。另一个解决方案就是开启本地服务器,把网页和资源挂到本地服务器上去。本文给出用Apache和pytho...

2016-12-17 14:12:35

阅读数 9738

评论数 0

Visual Studio2013下Magick++配置方法

ImageMagick是一个图片编辑的跨平台开源库,可以读写各种类型的图片(包括svg格式的矢量图)并对其进行处理。本文将介绍Win10平台下用源码编译ImageMagick库的流程,主要支持Visual Studio 2013的调用。

2016-08-16 20:48:15

阅读数 3930

评论数 2

Chrome自定义CSS样式的方法

Chrome自V33以后不允许自定义CSS样式了,但是仍然可以通过插件的方式实现自定义样式。因此本文主要完成如下3个工作: 1,介绍ChromeV33+自定义CSS样式的方法 2,介绍Chrome自定义滚动条样式的代码 3,介绍Chrome插件添加白名单的方法

2016-08-07 22:30:13

阅读数 8339

评论数 4

Windows下配置vegaFem的方法

vegaFem配置 vegaFem是一个跨平台的开源库,用于做几何和材料的模拟。官网:http://run.usc.edu/vega/。 vegaFem在linux下的配置比较容易,直接make就差不多了,博文http://blog.csdn.net/silangquan/article/deta...

2016-01-03 15:58:55

阅读数 1439

评论数 0

matlab/C混合编程--mex文件的编写、编译、调用

matlab程序计算速度太慢,特别是面对大量循环的时候。经测试,11k个面的规模的mesh,用matlab求mass properties需要0.45s,而同样的程序用C实现,在release模式下仅需要2ms。因此如果能将复杂计算、循环用C包装起来,用matlab调用,可以极大地提高运算速度。 ...

2015-08-14 16:09:47

阅读数 4904

评论数 0

Lib和Dll的那点事

转载自 http://www.cppfans.org/1394.html 搞程序开发的朋友应该对Lib和Dll很熟悉,对于这两个东西,可谓是几家欢喜几家忧,喜欢的人觉得它可以封装代码,避免别人剽窃,不喜欢的人觉得它很麻烦,干嘛不直接用源文件。而特别是新手对于Lib和Dll的关系和使用完全搞不...

2015-06-26 18:35:42

阅读数 383

评论数 0

GLEW库安装和初始化

转载请注明出处! GLEW库安装和初始化          GLEW库是OpenGL的扩展库,用于支持OpenGL1.1以上的版本[0]。比如着色器特性。一般非集成显卡都能支持到OpenGL2.0或者更高,但是没有GLEW库依然无法调用高版本OpenGL的函数。GLEW能自动识别你的平台所支持...

2015-05-19 18:14:55

阅读数 8942

评论数 2

PLY文件读取与显示

用OpenGL写了一份读取PLY文件并显示的代码,支持以下关键字:  ply/format/element vertex/property/element face/end_header 以及数据类型:  char(int8)/uchar(uint8)/short(int16)/ushort...

2015-04-19 18:53:15

阅读数 9263

评论数 13

OpenGL键盘事件处理

GLUT提供了两个函数用于设置键盘事件的回调函数,一个用于处理普通按键,一个处理特殊功能按键(如箭头、F1~F12)。 先看看处理普通按键的函数: void glutKeyboardFunc(void (*func) (unsigned char key, int x, int y)); 回...

2015-04-19 18:10:13

阅读数 3152

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭