摘要: 罗马数字是阿拉伯数字传入之前使用的一种数码。罗马数字采用七个罗马字母作数字、即Ⅰ(1)、X(10)、C(100)、M(1000)、V(5)、L(50)、D(500)。 记数的方法: 相同的数字连写,所表示的数等于这些数字相加得到的数,如 Ⅲ=3; 小的数字在大的数字的右边,所表示的数等于这些数字相加 阅读全文
posted @ 2016-09-02 10:36 花椰菜菜菜菜 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 判断一个数是否为回文数,不利用额外的空间。 思路:将数反转后进行比较。 注意:反转之后数越界的判断,若越界,则不是回文数;负数不是回文数; 代码如下: 阅读全文
posted @ 2016-09-01 21:06 花椰菜菜菜菜 阅读(175) 评论(0) 推荐(0) 编辑
摘要: string类型转换为int类型,需要考虑不同的转换情况。 “ 04” 转换结果 4; “ 4 43” 转换结果 4; “a@12 ” 转换结果 0; “12a” 转换结果 12; “ +12” 转换结果 12; “ + 12” 转换结果 0; “ -12” 转换结果 -12; “ - 12” 转换 阅读全文
posted @ 2016-09-01 15:13 花椰菜菜菜菜 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 此题实现比较简单,但是边界处理比较麻烦。题目要求是以32位考虑,所以可表达的数的范围是-2147483648~2147483648。 我们需要判断当前的数翻转之后是否在这个范围中,我的思路是首先对当前数的绝对值进行判断,如果它不是一个10位数就可以正常的执行; 反之,进入判断边界的部分。将边界的最大 阅读全文
posted @ 2016-09-01 09:45 花椰菜菜菜菜 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 题目: 最开始采用暴力解法,两个for循环遍历所有组合形式,时间复杂度为O(n2),代码省略。 进一步学习,采用hash表存储,空间换时间,时间复杂度为O(n),空间复杂度为O(n); 将数组放入hash表中,利用for循环遍历数字中元素并从hash表中找到对应的数。因为从hash表中取数的时间复杂 阅读全文
posted @ 2016-08-19 11:19 花椰菜菜菜菜 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 该开始就输在了理解题意上。。 没搞懂zigzag是什么意思。 查了一些解释终于明白要干什么了。 将一个字符串按照Z字形排列(侧着看);再把结果按行输出。 刚开始的想法是讲字符串按照规则排列在一个二维数组中,然后按序扫描数组输出。时间复杂度为O(n2). 进一步改进,按行数生成n个字符串, 阅读全文
posted @ 2016-08-19 11:00 花椰菜菜菜菜 阅读(547) 评论(0) 推荐(0) 编辑
摘要: java中移位运算符有三种“<<”、“>>”、“>>>”,没有“<<<”运算符。 “<<”运算符将二进制位进行左移,低位用0来填充; “>>”运算符将二进制位进行右移,用符号位填充高位; “>>>”运算符将二进制位进行右移,但是是用0来填充高位。 注意:对移位运算符右侧的参数需要进行模32的运算,如 阅读全文
posted @ 2016-04-24 20:47 花椰菜菜菜菜 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 2016.4.16 10:56 mark 阅读全文
posted @ 2016-04-16 10:57 花椰菜菜菜菜 阅读(104) 评论(0) 推荐(0) 编辑