xqn2017

导航

2017年12月8日 #

88. Merge Sorted Array

摘要: 原文题目: Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:You may assume that nums1 has enough space (si 阅读全文

posted @ 2017-12-08 19:21 xqn2017 阅读(153) 评论(0) 推荐(0)

70. Climbing Stairs

摘要: 原文题目: You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can 阅读全文

posted @ 2017-12-08 19:20 xqn2017 阅读(160) 评论(0) 推荐(0)

69. Sqrt(x)

摘要: 原文题目: Implement int sqrt(int x). Compute and return the square root of x. 读题: 题目就是求x的开根号,很重要的一点是返回值是整数,而不是浮点数,因此这个开根号其实只是接近实际开根号的值的整数而已,并不是精确的开根号,因此可以 阅读全文

posted @ 2017-12-08 19:20 xqn2017 阅读(167) 评论(0) 推荐(0)

100. Same Tree

摘要: 原文题目: Given two binary trees, write a function to check if they are equal or not. Two binary trees are considered equal if they are structurally ident 阅读全文

posted @ 2017-12-08 19:19 xqn2017 阅读(155) 评论(0) 推荐(0)

101. Symmetric Tree

摘要: 本题判断一个二叉树是否为对称树 题目链接: 101. Symmetric Tree 阅读全文

posted @ 2017-12-08 19:18 xqn2017 阅读(130) 评论(0) 推荐(0)

102/107. Binary Tree Level Order Traversal/II

摘要: 原文题目: 102. Binary Tree Level Order Traversal 107. Binary Tree Level Order Traversal II 读题: 102. 层序遍历二叉树,每一层作为一个数组,从上到下输出 107.层序遍历二叉树,每一层作为一个数组,反过来从下到上 阅读全文

posted @ 2017-12-08 19:17 xqn2017 阅读(140) 评论(0) 推荐(0)

110. Balanced Binary Tree

摘要: 原文链接: 110. Balanced Binary Tree 读题: 判断是否为平衡二叉树,平衡二叉树的定义是每个节点的左右子树的高度差不超过1,显然需要通过求高度,也就是树的深度差来判断。 阅读全文

posted @ 2017-12-08 19:16 xqn2017 阅读(99) 评论(0) 推荐(0)

108. Convert Sorted Array to Binary Search Tree

摘要: 原文题目: 108. Convert Sorted Array to Binary Search Tree 读题: 首先是个有序序列,从小到大排列,要转成一个高度平衡的二叉搜索树,那么有序序列的中间那个数就是根节点,该数左边的序列为左孩子,右边的为右孩子,用递归实现很简单: 阅读全文

posted @ 2017-12-08 19:16 xqn2017 阅读(105) 评论(0) 推荐(0)

111. Minimum Depth of Binary Tree

摘要: 原文题目: 111. Minimum Depth of Binary Tree 读题: 求最小深度,这和求树的最大深度差不多,只不过需要注意当左子树或者右子树为空时,最小深度并不为0,而是取决于非空子树的最小深度 阅读全文

posted @ 2017-12-08 19:15 xqn2017 阅读(120) 评论(0) 推荐(0)

python中itertools里的product和permutation

摘要: 平时经常碰到全排列或者在n个数组中每个数组选一个值组成的所有序列等等问题,可以用permutation和product解决,很方便,所以在此mark一下吧 直接上代码 阅读全文

posted @ 2017-12-08 19:14 xqn2017 阅读(10572) 评论(0) 推荐(0)

112. Path Sum

摘要: 原文题目: 112. Path Sum 读题: 二叉树中是否存在给定和为给定数的路径,递归实现最简单 阅读全文

posted @ 2017-12-08 19:14 xqn2017 阅读(112) 评论(0) 推荐(0)

python Excel的操作

摘要: import xlrd import matplotlib.pyplot as plt if __name__ == '__main__': target = xlrd.open_workbook('first.xls','r') #文件名要写完整路径,这里的文件直接放在了和.py同一个目录了 sh = target.sheet_by_index(0) #取第一张表 ... 阅读全文

posted @ 2017-12-08 19:13 xqn2017 阅读(261) 评论(0) 推荐(0)

125. Valid Palindrome

摘要: 原文题目:125. Valid Palindrome读题: 该题目就是给定一组字符串,然后只检查字符串中的字母和数字,并且忽略字母的大小写,然后判断是否为回文 思路: 解法一:循环遍历字符串,将非字母非数字的字符用''直接替换掉得到纯字母数字字符串,然后忽略大小写lower()或者upper()判断 阅读全文

posted @ 2017-12-08 19:12 xqn2017 阅读(119) 评论(0) 推荐(0)

118/119. Pascal's Triangle/II

摘要: 原文题目: 118. Pascal's Triangle 119. Pascal's Triangle II 读题: 杨辉三角问题 阅读全文

posted @ 2017-12-08 19:12 xqn2017 阅读(120) 评论(0) 推荐(0)

160. Intersection of Two Linked Lists

摘要: 原文题目: 160. Intersection of Two Linked Lists 读题: 给定两个无环链表,判断是否有交叉点,返回第一个交叉点 解题思路: 求出两个链表长度lenA和lenB,得到两者的差值,deltaLen = lenA - lenB,这里假设A长度大于B长度,让p指向A头结 阅读全文

posted @ 2017-12-08 19:11 xqn2017 阅读(146) 评论(0) 推荐(0)

168. Excel Sheet Column Title

摘要: 原文题目: 168. Excel Sheet Column Title 读题: 将整数转为EXCEL表格列标,实际上就是十进制转26进制 阅读全文

posted @ 2017-12-08 19:10 xqn2017 阅读(134) 评论(0) 推荐(0)

167. Two Sum II - Input array is sorted

摘要: 原文题目: 167. Two Sum II - Input array is sorted 读题: 给定一个升序序列,找到两个数加起来等于目标值,并输出索引,注意这里的索引是从1开始的 解题思路: 由于是升序,因此,可以用p指向第一个元素,用q指向最后一个元素,然后判断p和q所指的数加起来是否为目标 阅读全文

posted @ 2017-12-08 19:10 xqn2017 阅读(133) 评论(0) 推荐(0)

172. Factorial Trailing Zeroes

摘要: 原文题目: 172. Factorial Trailing Zeroes 读题: 求n!的末尾有多少个0。说实话,第一次看到这个题,有点懵,由于需要在O(logn)的复杂度内,当然不能去把n!计算出来,然后仔细想想,末尾0是哪里来的?只有当2*5时才会产生一个0,而在1-n中,2的个数明显要多于5的 阅读全文

posted @ 2017-12-08 19:09 xqn2017 阅读(95) 评论(0) 推荐(0)

169. Majority Element

摘要: 原文题目: 169. Majority Element 读题: 这个是一道经典算法题,可以用摩尔投票算法(Moore voting algorithm),前提是一定有一个元素的个数超过总元素个数的一半。 比如对于序列[1,1,1,1,1,1,2,2,3,3,4],此时设置一个count,由于前6个都 阅读全文

posted @ 2017-12-08 19:09 xqn2017 阅读(127) 评论(0) 推荐(0)

189. Rotate Array

摘要: 原文题目: 189. Rotate Array 读题: 向右旋转数组,假设数组长度为Len,则旋转Len次后数组恢复到原始状态 解题思路: 方法一:将原始数组翻转,然后将前k个数翻转,然后将剩余的数翻转,得到最终的nums; 方法二:就是将索引为Len-k开始的数组元素赋值到nums的前k的元素,然 阅读全文

posted @ 2017-12-08 19:08 xqn2017 阅读(128) 评论(0) 推荐(0)

202. Happy Number

摘要: 原文题目: 202. Happy Number 读题: 题目很简单,将整数的每位取平方相加看是否等于1,如果死循环那么就返回False 阅读全文

posted @ 2017-12-08 19:07 xqn2017 阅读(122) 评论(0) 推荐(0)

204. Count Primes

摘要: 原文题目: 204. Count Primes 读题: 题目很简单,就是求小于n的质数的个数,注意是小于n,不等于n,也就是说n=2的时候,返回0,n=3时才是返回1 一下列出两种方法,一种方法超时,另一种方法逐步优化到46ms 阅读全文

posted @ 2017-12-08 19:06 xqn2017 阅读(122) 评论(0) 推荐(0)

203. Remove Linked List Elements

摘要: 原文题目: 203. Remove Linked List Elements 读题: 删除链表中节点的值与目标值相等的节点,这和单链表删除某个节点不一样的地方在于,可能需要删除多个节点。 解法一是自己写的,利用两个指针p和q,如果p,q相等,则将p->next = q->next,跳过q节点 解法二 阅读全文

posted @ 2017-12-08 19:06 xqn2017 阅读(110) 评论(0) 推荐(0)

217/219. Contains Duplicate /Contains Duplicate II

摘要: 原文题目: 217. Contains Duplicate 219. Contains Duplicate II 读题: 217只要找出是否有重复值, 219找出重复值,且要判断两者索引之差是否小于k 阅读全文

posted @ 2017-12-08 19:05 xqn2017 阅读(165) 评论(0) 推荐(0)

普通浮点数转半精度工具实现

摘要: 工作中遇到的小工具制作,直接压成exe就可以用了 功能:输入文件,将文件中的一列浮点转为一列半精度浮点(半精度浮点)或者两列浮点转为一列复数型半精度浮点,输出为同级目录源文件名+Out.dat,输入0退出 case1:文件中是一行数据0.5,那么输出就是0x3c00 case2:文件中一行数据是 0 阅读全文

posted @ 2017-12-08 19:04 xqn2017 阅读(2139) 评论(0) 推荐(1)

C语言中插入汇编nop指令

摘要: 工作过程中,有的时候需要打桩cycle,想在C语言中插入nop指令,可以采取的方法是 头文件中加入#inlude <stdio.h> 定义一个内联函数,然后调用这个函数,不过得测一下平台调用内联函数的开销,而不仅仅是nop指令的个数,在自己的测试中,调用大概是9个cycle,而nop指令是1个cyc 阅读全文

posted @ 2017-12-08 17:33 xqn2017 阅读(1875) 评论(0) 推荐(0)

8. String to Integer (atoi)

摘要: 原文题目: 8. String to Integer (atoi) 读题: 这个题目主要是判断输入,以及有符号数溢出情况,以下输入是合理的 1) 输入" 12" 输出12 2)输入" -23a34" 输出-23 3)输入 "+010" 输出10 以下是AC代码: 阅读全文

posted @ 2017-12-08 17:32 xqn2017 阅读(149) 评论(0) 推荐(0)

15. 3Sum

摘要: 原题目: 15. 3Sum 读题: 任意三个数相加为0,但是不能是相同的三元组 解题思路: 先排序,然后遍历序列,如果遇到相同的数则跳过,指定一个num[i]后,剩下的就是要找到另外两个数A+B=-num[i],可以采用二分查找,begin = i+1;end = len -1;依次查找可以得到,以 阅读全文

posted @ 2017-12-08 17:31 xqn2017 阅读(151) 评论(0) 推荐(0)

八皇后问题

摘要: 八皇后问题描述大家都比较熟悉,就是在8*8的方格中放置8个皇后,使得8个皇后不在同一行、同一列以及不在对角线上,这样8个皇后才不会互相攻击,求放置的方法有多少种? 答案就是92种。 解题思路:假设用C[j]表示皇后在j行代表的列号,也即皇后的位置第j行第C[j]列采用行列表示为[j,C[j]],j和 阅读全文

posted @ 2017-12-08 17:30 xqn2017 阅读(209) 评论(0) 推荐(0)

python实现根据指定字符截取对应的行的内容

摘要: 工作中遇到的,在一个.c文件中有很多函数,这个.c是自动生成的,需要将所有的函数通过extern放到.h中,每个函数都是UINT32 O_开头,通过正则表达式进行字符匹配以及通过linecache来截取特定行,代码如下: 输入: 输出: 阅读全文

posted @ 2017-12-08 17:29 xqn2017 阅读(5009) 评论(0) 推荐(0)

Linux下GDB调试简单示例

摘要: 这里介绍对文件first.c的基本GDB调试操作,只有部分命令,只是一个示例,运行环境为装有gcc编译器和gdb调试器的Linux环境,基本GDB调试命令如下表: 命令 描述backtrace(或bt) 查看各级函数调用及参数finish 连续运行到当前函数返回为止,然后停下来等待命令frame(或 阅读全文

posted @ 2017-12-08 17:27 xqn2017 阅读(4129) 评论(0) 推荐(0)

从字符串中提取出数字

摘要: 在平时的工作中,解析Log日志时,很多Log日志的名字是用数字编号和字母字符组成,有时候只需要数字编号即可,这可以通过正则表达式来提取,这里介绍两种很简单的提取方法,但很实用,还有其他方法,欢迎大家留言补充。 阅读全文

posted @ 2017-12-08 17:26 xqn2017 阅读(506) 评论(0) 推荐(0)

python中求两个List的交集、并集和差集

摘要: 直接上代码,有三种方法,第三种调用库函数效率最高 阅读全文

posted @ 2017-12-08 17:25 xqn2017 阅读(1402) 评论(0) 推荐(0)

结构体设计技巧

摘要: 本文主要记录在工作过程中遇到的,需要取结构体某个元素的偏移,或者结构体中有个变量的需要申请动态内存的设计技巧,姑且就叫技巧吧,做个记录,由于包含有动态申请的内存,因此,结构体的大小就并不是sizeof的大小了。 阅读全文

posted @ 2017-12-08 15:19 xqn2017 阅读(195) 评论(0) 推荐(0)