游戏开发 | ETH MSCS 在读

最近在做暑研,要求是需要获取到Android手机中的应用使用情况,经过查找,发现Android提供了 UsageStatsManager类来帮助进行应用使用信息的统计(注明,Android5.0系统大部分手机不支持这个类,Android5.1系统之后完全支持[1], 显然现在大部分手机都是支持的),这篇文章主要记录一下这个类的使用方法。

阅读全文 »

C语言的标准库中没有哈希表的函数可以使用,但是可以通过第三方头文件uthash.h这个包来实现哈希表的操作。首先,想要使用这个包,可以访问它的github网站 https://github.com/troydhanson/uthash 下载uthash.h文件。

阅读全文 »

题目描述

给你一个整数数组 nums ,返回 nums[i] XOR nums[j] 的最大运算结果,其中 0 ≤ i ≤ j < n 。 - 要求在O(n)时间内解决这个问题 - 限制:1 <= nums.length <= 2 * 10^4 0 <= nums[i] <= 2^31 - 1

阅读全文 »

题目描述

给定一个直方图(也称柱状图),假设有人从上面源源不断地倒水,最后直方图能存多少水量?直方图的宽度为 1。LeetCode: 面试题17.21

1
2
3
示例:
输入: [0,1,0,2,1,0,1,3,2,1,2,1]
输出: 6
阅读全文 »

题目描述

给你一个字符串 path ,表示指向某一文件或目录的Unix 风格绝对路径(以 '/' 开头,请你将其转化为更加简洁的规范路径。

在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。任意多个连续的斜杠(即,'//')都被视为单个斜杠 '/' 。 对于此问题,任何其他格式的点(例如,'...')均被视为文件/目录名称。

请注意,返回的 规范路径 必须遵循下述格式:

始终以斜杠 '/' 开头。 两个目录名之间必须只有一个斜杠 '/' 。 最后一个目录名(如果存在)不能 以 '/' 结尾。 此外,路径仅包含从根目录到目标文件或目录的路径上的目录(即,不含 '.' 或 '..')。 返回简化后得到的 规范路径 。

阅读全文 »

题目描述

已知存在一个按非降序排列的整数数组 nums ,数组中的值不必互不相同。

在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转 ,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,4,4,5,6,6,7] 在下标 5 处经旋转后可能变为 [4,5,6,6,7,0,1,2,4,4] 。

给你旋转后的数组nums和一个整数target,请你编写一个函数来判断给定的目标值是否存在于数组中。如果 nums 中存在这个目标值 target,则返回 true,否则返回 false。

阅读全文 »

题目描述

给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 最多出现两次 ,返回删除后数组的新长度。

不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

阅读全文 »

题目描述

一个句子是由一些单词与它们之间的单个空格组成,且句子的开头和结尾没有多余空格。比方说,"Hello World""HELLO""hello world hello world" 都是句子。每个单词都 包含大写和小写英文字母。

如果两个句子 sentence1sentence2 ,可以通过往其中一个句子插入一个任意的句子(可以是空句子)而得到另一个句子,那么我们称这两个句子是 相似的 。比方说,sentence1 = "Hello my name is Jane"sentence2 = "Hello Jane" ,我们可以往 sentence2"Hello""Jane" 之间插入 "my name is" 得到 sentence1

给你两个句子 sentence1sentence2 ,如果 sentence1sentence2 是相似的,请你返回 true ,否则返回 false

阅读全文 »