free website counter

Mushsen's Blog


C++中变量做数组维数

  记得C/C++语法规范中,不能使用变量定义数组维数,因为数组维数的确定,需要在编译阶段完成。要想在程序实行阶段确定数组维数,应该使用new/malloc去动态分配;但是试验了一下,由于g++对C99的支持,使得使用变量定义数组维数也是可行的(在Linux系统下),但是如此方法,在VC下会报错,即这并不是符合C++语法规范的写法,在很大程度上会限制代码的平台兼容性,应该避免这种写法,以此备忘。

Read More

string与int转换相关

  在做Leetcode的Compare Version Numbers;涉及到string子串的比较,而子串全为数字,当时直接拿string来比较,没考虑到两个子串长度不同的情况,即”01”与”1”,应该是相等的。C语言中,使用atoi可以将string转换成int,而atoi的参数为const char *nptr,故在C++中,不能直接对string进行操作,可以先通过c_str返回一个指向正规C字符串的指针,再通过atoi进行转换;

Read More

C++中各种内置数据类型的长度以及表示范围

  关于各种内置数据类型的size,一直以来都记得不是特别明确,这段时间都在写比较底层的OS直接操作硬件的C代码,倒也习惯了u8、u16、u32各种为满足操作系统平台移植性要求定义的数据类型;想起两年半以前在skyroam时候,看着GMate的系统代码,这是啥,这特么又是啥,那个迷茫的夏天。两年多的时间,收获了太多,不管是coding 上,还是其他。

Read More

字符串统计

1. 题目来源

  来自X公司的实习生面试题,即给定一个string s = “abcabcabcbcc”,return “3a4b5c”;

Read More

link list cycle

1. 题目来源

  今天宿舍哥们去面X公司的内推实习生,说二面时上来就两道算法题,30分钟写完。一道是Leetcode上的原题,即判断一个链表是否有环,若有环,找出环开始的位置;还有一道题目为字符串压缩,即给出”aaabbbbccccc”,return “3a4b5c”,两道题目都比较简单;;最近在按分类刷Leetcode,即将完成String的部分,特意把Linked List Cycle I/II找出出来,提前做一下,两道题在Leetcode上面AC率都比较高。

Read More
Load More…
分享按钮