由买买提看人间百态

topics

全部话题 - 话题: unsigned
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
f****g
发帖数: 313
1
来自主题: JobHunting版 - 发几道Google面试题(Phone and Onsite)
Thanks for sharing :P
Here is my solution for Phone Question:
SSL, for example a -> b (A refer B)
d -> c (D refer C)
c -> a (C refer A)
find a data structure to save these information and print the following
result: d->c->a->b
++++++++++++++++++++
The data structure I pick is Array Hash Table.
Typedef struct NODE{
unsigned char keyVal;
unsigned char *pRefer; // point to the char referred.
} Node;
Node key[26];
Insertion operation: space O(26), tim
f****g
发帖数: 313
2
来自主题: JobHunting版 - 发amazon的phone面试题
Thanks for sharing your interview questions:-) I try to come up my brief
solution here. Any comments/suggestions are highly welcome!
1. 算时针和分针的夹角
/* Compute the smaller angel between the hour and min hands*/
float calcAngle(unsigned int hour, unsigned int min)
{
double hAngle, mAngle, angle;
if( hour > 12 || 0 == hour || min > 60)
{
return -1;
}
mAngle = 6*min; // 360/60 = 6
hAngle = 30*hour + 0.5*min; // 360/12 = 30; 30/60=0.5
if( mAngle > hAngle)
L*******e
发帖数: 114
3
来自主题: JobHunting版 - 砸了面试,发面题
骑驴找驴,砸了面试,潜心修行,明春再战。
//1. what is the output of the following program?
class A{
public:
struct HEADER{
int a_;
double b_;
unsigned int c_;
unsigned char d_;
static int SIZE = 100;
}header;
private:
double k;
};
int main()
{
A a;
cout << "sizeof A: " << sizeof(a) << endl;
cout << "sizeof structure: " << sizeof(a.HEADER) << endl;
}
//2. What is the output of the following program?
void print(int a, int b)
{
cout<<"value a: " << a
w*********s
发帖数: 277
4
来自主题: JobHunting版 - 新手请教:C++ decrement loop (转载)
【 以下文字转载自 Programming 讨论区 】
发信人: woganmitbbs (我gan买买提), 信区: Programming
标 题: 新手请教:C++ decrement loop
发信站: BBS 未名空间站 (Mon Nov 1 15:41:40 2010, 美东)
编程新手,请不吝赐教!
for(unsigned int idx = 9; idx >= 0; idx--) {
cout << "index is " << idx << endl;
}
这么简单的都没调通,很郁闷。这个loop不能terminate,即使idx已经是负数了。
最原始的本意是作为vector的index,所以用的vector::size_type,发现不能
terminate,所以就换成unsigned int试试,仍然不terminate。
谢谢指点!
r**l
发帖数: 31
5
来自主题: JobHunting版 - google电面第一轮面经 求bless

classic question bit reverse
lgn implementation, there are more efficient and fancy way of bit
operation, but this is most straightforward.
// assume 32 bits integer
unsigned int reverseBits(unsigned int x) {
x = (((x & 0xaaaaaaaa) >> 1) | ((x & 0x55555555) << 1));
x = (((x & 0xcccccccc) >> 2) | ((x & 0x33333333) << 2));
x = (((x & 0xf0f0f0f0) >> 4) | ((x & 0x0f0f0f0f) << 4));
x = (((x & 0xff00ff00) >> 8) | ((x & 0x00ff00ff) << 8));
return((x >> 16) | (x << 16));
}
p******x
发帖数: 691
6
来自主题: JobHunting版 - 看到一个c的面试题,求教。
int i;
unsigned char *iPointer;
iPointer = (unsigned char *) &i;
Then you can use iPointer[3]
u****u
发帖数: 229
7
来自主题: JobHunting版 - 请问一个little endian 系统的问题
1) 移位操作和endianess没有一点关系.
2) unsigned int32 a=0x000000ff, unsigned int16 b=0x00ff.和endianess没有一点
关系.
3) 为什么我们说C语言不好?问题就是在于有太多的类似的概念不清的新手上来就用C.
g*******s
发帖数: 490
8
用& | 和 bit shift的方法有,只用& |的还真不知道
unsigned __int32 reversing_bits(unsigned __int32 input)
{
// complixity O(log [no.of.bits]) = O(1)
// On 32 bit machines it takes 5 steps (logical)
// Step 1
// Mask bit positions 0, 2, 4... shift LEFT this masked number by one
// Mask bit positions 1, 3, 5... shift RIGHT this masked number by one
input = (input & 0x55555555) << 1 | (input & 0xAAAAAAAA) >> 1;
// Step 2
// Mask bit positions 01, 45, 89... shift LEFT this masked number by ... 阅读全帖
g**f
发帖数: 414
9
来自主题: JobHunting版 - array contains two integer that sum up to 7
刚写了一下,应该work。
O(1) space, O(n) time.
bool SumToS(int* array, const int len, const int S,
unsigned& ndx1, unsigned& ndx2)
{
int i = 0, j = len-1;
while (i != j) {
if (array[i] + array[j] < S) ++i;
else if (array[i] + array[j] > S) --j;
else {ndx1 = i; ndx2 = j; return true;}
}
return false;
}
m*********2
发帖数: 701
10
wow, good point.
yea, i think what the author saying is:
EOF == -1
0xFF == 255.
that's why you want to use int.
it's large enough to differentiate whether it's -1 or 255.
the short answer is:
getchar() returns int.
and c is int.
so, you are comparing integers, NOT char.

data type is signed or unsigned. This can lead to trouble when combining
chars and ints, such as in code that calls the int-valued routine
getchar(). If you say
between -128 and 127 if char is signed, for the almost universal
co... 阅读全帖
P**********c
发帖数: 3417
11
来自主题: JobHunting版 - G面经
第12题vector能存多少数是有上限的吧,毕竟它的size()返回值其实是
unsigned int. 存成vector的好处是什么呢?

the
called
all
890
P**********c
发帖数: 3417
12
来自主题: JobHunting版 - G面经
第12题vector能存多少数是有上限的吧,毕竟它的size()返回值其实是
unsigned int. 存成vector的好处是什么呢?

the
called
all
890
a********r
发帖数: 218
13
Given the character array {‘a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’}
create a function/method that can shift the characters to the right by a
number of iterations specified in a parameter.
the prototype would look like:
void shift(char *arry, unsigned int length, unsigned int shift_count);
A call to this method with a shift count of 1 would return the result {’h’
,‘a’,’b’,’c’,’d’,’e’,’f’,’g’} , and 5 would return the result
{‘d’,’e’,’f’,’g’,’h’,’a’,’b’,’c’}.
Thanks so much!
a********r
发帖数: 218
14
Given the character array {‘a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’}
create a function/method that can shift the characters to the right by a
number of iterations specified in a parameter.
the prototype would look like:
void shift(char *arry, unsigned int length, unsigned int shift_count);
A call to this method with a shift count of 1 would return the result {’h’
,‘a’,’b’,’c’,’d’,’e’,’f’,’g’} , and 5 would return the result
{‘d’,’e’,’f’,’g’,’h’,’a’,’b’,’c’}.
Thanks so much!
p****e
发帖数: 37
15
来自主题: JobHunting版 - 再发两道F电面题
1. print a linked list reversely.
I write 3 methods,
1. recursive
2. use a temporary vector to save list nodes
3. reverse the linked list first, and then print (we could reverse it back
if required)
Then I was asked in which situation method 2 is better than 3. (the answer
he want is multi-thread, I didn't get it :( )
2. Suppose we have a following struct:
struct Bits{ unsigned known, unsigned value};
if a certain bit in known is set, it means the value of this bit is known,
and its correspondin... 阅读全帖
C*******n
发帖数: 193
16
来自主题: JobHunting版 - 问个BITWISE的题目。
The following function will return true for some numbers and false for other
numbers. Explain which ones.
unsigned int BLACKBOX(unsigned int x) { return (x)&((x)-1)); }
K*****k
发帖数: 430
17
来自主题: JobHunting版 - 股票题的化归?
unsigned int MaxGain(int stock[], unsigned int N)
{
if (N < 2)
return 0;
int left_min = stock[0];
int max_gain = 0;
for (int i = 1; i < N; i++)
{
if (A[i] - left_min > max_gain)
max_gain = A[i] - left_min;
if (A[i] < left_min)
left_min = A[i];
}
return max_gain;
}
p*********b
发帖数: 47
18
来自主题: JobHunting版 - Zillow screen 面经,兼打听工资
void setAtLocation(n){
unsigned int byteOffset = n/8;
unsigned char bitOffset = n%8;
buf[byteOffest] |= (1< }
内存占用是2^(32 -3) bit == 512 MB,原帖数字写错了。。。汗

malloc/
w*******r
发帖数: 2953
19
来自主题: JobHunting版 - 一道OO设计题
改完的程序在下面,这下疾病可以随便定义了,也可以治病了。
想给给个病安个计数器,记得好像有个什么关健词可以让所有的object改动的都是
同一个变量而不是各自的变量(counter),记不起来了,所以这个counter打印得
不对,有知道的告诉我一声。
#include
#include
#include
using namespace std;
class Disability
{
public:
Disability(){counter = 0; };
Disability(string, string);
~Disability(){};
string get_disease_name() const { return name; };
string get_disease_desc() const { return desc; };
void incr_sick_human_counter() {counter++; };
unsigned long get_hum... 阅读全帖
a*****g
发帖数: 13
20
来自主题: JobHunting版 - facebook一题
c++ practice (use multiset):
#include
#include
using std::multiset;
using std::string;
int len_p = 4;
bool check_substr(string s, const multiset &L) {
multiset dup_L = L;
for (unsigned i=0; i string token = s.substr(i, len_p);
multiset::iterator itor = dup_L.find(token);
if (itor == dup_L.end()) {
return false;
}
dup_L.erase(itor);
}
return dup_L.empty();
}
int main(... 阅读全帖
a*****g
发帖数: 13
21
来自主题: JobHunting版 - facebook一题
c++ practice (use multiset):
#include
#include
using std::multiset;
using std::string;
int len_p = 4;
bool check_substr(string s, const multiset &L) {
multiset dup_L = L;
for (unsigned i=0; i string token = s.substr(i, len_p);
multiset::iterator itor = dup_L.find(token);
if (itor == dup_L.end()) {
return false;
}
dup_L.erase(itor);
}
return dup_L.empty();
}
int main(... 阅读全帖
w****x
发帖数: 2483
22
来自主题: JobHunting版 - 问一个facebook的电面题
要考虑的有正负,溢出(INT_MIN)的版本:
int divide(int a, int b) {
assert(b != 0);
bool bNeg = false;
if ((a < 0 && b > 0) || (a > 0 && b < 0))
bNeg = true;
unsigned int ua = a < 0 ? -a : a;
unsigned int ub = b < 0 ? -b : b;
int msb = 0;
while ((ub << msb) < ua) msb++;
int q = 0;
for (int i = msb; i >= 0; i--) {
if ((ub << i) > ua) {
continue;
}
q |= (1 << i);
ua -= (ub << i);
}
return bNeg ? -q : q;
}
w****x
发帖数: 2483
23
来自主题: JobHunting版 - 问一个facebook的电面题
要考虑的有正负,溢出(INT_MIN)的版本:
int divide(int a, int b) {
assert(b != 0);
bool bNeg = false;
if ((a < 0 && b > 0) || (a > 0 && b < 0))
bNeg = true;
unsigned int ua = a < 0 ? -a : a;
unsigned int ub = b < 0 ? -b : b;
int msb = 0;
while ((ub << msb) < ua) msb++;
int q = 0;
for (int i = msb; i >= 0; i--) {
if ((ub << i) > ua) {
continue;
}
q |= (1 << i);
ua -= (ub << i);
}
return bNeg ? -q : q;
}
j*p
发帖数: 115
24
来自主题: JobHunting版 - 微软SDE onsite面经及咨询
已经被通知被拒了 :(
前面的问题解释一下
1. 明确说是unsigned。interviewer跟我说int 本身就是unsigned,如果要得到负数,
要加signed。这是什么语法?觉得不对,不过也没跟他争
2. 那个map的就是 你用一个matrix存地图的链接,可以往四个方向找邻近的地图,
matrix每个元素都有一个连接链到另一个存放更细致地图的matrix,所以整体看是个
tree
3. 连续数那题明确说要最大的负数
刚才recruiter打电话说被拒了 我说我回答问题连hesitation都没有怎么就被拒了?她
又查了一下 还是被拒了
y***d
发帖数: 2330
25
来自主题: JobHunting版 - c++ is too nasty
C/C++ 把各种 size 搞成 unsigned 类型,现在看来这实在是非常脑残的事情;
好处或许是个别程序可以管理更大一点空间,
而坏处就是所有程序都要操心类型转换;那一堆 signed-unsigned 的警告,本质上是
没有意义的事情,却每个人都要花精力在这个上面。
r******r
发帖数: 700
26
来自主题: JobHunting版 - 如何秒杀99%的海量数据处理面试题
海量数据处理:十道面试题与十个海量数据处理方法总结
作者:July、youwang、yanxionglu。
时间:二零一一年三月二十六日
说明:本文分为俩部分,第一部分为10道海量数据处理的面试题,第二部分为10个海量
数据处理的方法总结。
本文之总结:教你如何迅速秒杀掉:99%的海量数据处理面试题。有任何问题,欢迎随
时交流、指正。
出处:http://blog.csdn.net/v_JULY_v
------------------------------------------
第一部分、十道海量数据处理面试题
1、海量日志数据,提取出某日访问百度次数最多的那个IP。
首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中
。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把
整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash
_map进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最
大的IP中,找出那个频率最大的IP,即为所求。
或者如下阐述(雪... 阅读全帖
r******r
发帖数: 700
27
来自主题: JobHunting版 - 如何秒杀99%的海量数据处理面试题
海量数据处理:十道面试题与十个海量数据处理方法总结
作者:July、youwang、yanxionglu。
时间:二零一一年三月二十六日
说明:本文分为俩部分,第一部分为10道海量数据处理的面试题,第二部分为10个海量
数据处理的方法总结。
本文之总结:教你如何迅速秒杀掉:99%的海量数据处理面试题。有任何问题,欢迎随
时交流、指正。
出处:http://blog.csdn.net/v_JULY_v
------------------------------------------
第一部分、十道海量数据处理面试题
1、海量日志数据,提取出某日访问百度次数最多的那个IP。
首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中
。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把
整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash
_map进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最
大的IP中,找出那个频率最大的IP,即为所求。
或者如下阐述(雪... 阅读全帖
c****p
发帖数: 6474
28
来自主题: JobHunting版 - 一道码公电面题(nvidia),怎么做
int bits_odd_even(int x)
{
//int LEN = 8 * sizeof(x);
//int i;
unsigned n;
n = (unsigned) x;
n = ((n&0xaaaaaaaaU)>>1) ^ (n&0x55555555U);
n = ((n&0x44444444U)>>2) ^ (n&0x11111111U);
n = ((n&0x10101010U)>>4) ^ (n&0x01010101U);
n = ((n&0x01000100U)>>8) ^ (n&0x00010001U);
n = ((n&0x00010000U)>>16) ^ (n&0x00000001U);
return n & 1;
}
c****p
发帖数: 6474
29
来自主题: JobHunting版 - 一道码公电面题(nvidia),怎么做
int bits_odd_even(int x)
{
//int LEN = 8 * sizeof(x);
//int i;
unsigned n;
n = (unsigned) x;
n = ((n&0xaaaaaaaaU)>>1) ^ (n&0x55555555U);
n = ((n&0x44444444U)>>2) ^ (n&0x11111111U);
n = ((n&0x10101010U)>>4) ^ (n&0x01010101U);
n = ((n&0x01000100U)>>8) ^ (n&0x00010001U);
n = ((n&0x00010000U)>>16) ^ (n&0x00000001U);
return n & 1;
}
f*******n
发帖数: 12623
30
来自主题: JobHunting版 - 如何判断char的赋值有没有溢出
"unsigned char" can hold 0 - 255
"signed char" can hold -128 to 127
"char" can be either signed or unsigned char, depending on the
implementation
l*********8
发帖数: 4642
31
来自主题: JobHunting版 - Divide Two Integers
我也练习一个:
// caculate a/b
int devide(int a, int b)
{
if (b==0) throw std::overflow_error("Divide by zero exception");
if (a<0) return -devide(-a,b);
if (b<0) return -devide(a,-b);
if (a int d = 1;
while(b>0 && b<=a) {
b <<= 1;
d <<= 1;
}
b = unsigned int(b) >> 1;
d = unsigned int(d) >> 1;
int ans = 0;
while(b) {
ans += d;
a -= b;
while(b>a) {
b >>= 1;
d >>= 1;
}
}
return ans;
}
l*********8
发帖数: 4642
32
来自主题: JobHunting版 - Divide Two Integers
我也练习一个:
// caculate a/b
int devide(int a, int b)
{
if (b==0) throw std::overflow_error("Divide by zero exception");
if (a<0) return -devide(-a,b);
if (b<0) return -devide(a,-b);
if (a int d = 1;
while(b>0 && b<=a) {
b <<= 1;
d <<= 1;
}
b = unsigned int(b) >> 1;
d = unsigned int(d) >> 1;
int ans = 0;
while(b) {
ans += d;
a -= b;
while(b>a) {
b >>= 1;
d >>= 1;
}
}
return ans;
}
j********e
发帖数: 1192
33
来自主题: JobHunting版 - google scramble string O(n) 解法
我没有说字符集相同就能scramble,字符集相同是必要条件,而不充分。
我的做法是,先找到一个位置i在s1,j在s2使得分割后的4个字符串两两
有相同的字符集(i=j 或者i=N-j)。然后接着对这2对字符串继续做同样
的事情连寻找分割位置。这样递归下去,如果有某对字符串无法找到分割
位置,则表示失败。否则,最后分隔最小的字符串只有一个字符。就可以
判断scramble成功。
问题是,如果有多个分割位置,是否任选一个都可以?如果必须测试每个可能的分割位置,那复杂度就不好说了。
下面是我的简单实现代码,通过了leetcode的online judge (包括judge large)。这段代码中会处理所有可能的分割位置。如果只选第一个可能的分割位置,有一个测试失败了。
#include
#include
#include
#include
using namespace std;
#define BITMAP_LEN 256
bool compare_char_set(const char *s1, con... 阅读全帖
t*****j
发帖数: 1105
34
来自主题: JobHunting版 - google scramble string O(n) 解法
我也回报一下。递归的,复杂度是二叉树层数*字符串个数。空间复杂度也是O(n).
今晚刚写的,test过了。
bool isSubAnargm(string parent, string child)
{
if(parent.empty() && child.empty()) return true;
for(unsigned int i = 0; i< child.size(); i++)
{
if (parent.find(child[i]) < 0) return false;
}
if (parent.find(child[0]) > parent.find(child[child.size()-1]))
{
reverse(parent.begin(), parent.end());
};
if (parent.compare(child) == 0) return true;
int currentMaxPosition = -1;
int validMaxLeng... 阅读全帖
C***U
发帖数: 2406
35
来自主题: JobHunting版 - leetcode上的2个整数相除
恩 我之前注意这个了
所以才用unsigned int
我改成unsigned long
结果还是溢出 处理这个问题好像要单独拿出来
N**n
发帖数: 832
36
来自主题: JobHunting版 - Calculate Sqr()
为啥不用辗转相除?只需要100多条汇编指令,代码如下
int sqrt (unsigned x) {
unsigned m, y, b;
m = 0x40000000;
y = 0;
while (m) {
b = y | m;
y >>= 1;
if (x >= b) {
x -= b;
y |= m;
}
m >>= 2;
}
return y;
}
j******2
发帖数: 362
37
为什么没有signed的问题?
P.366 L10
bitfield[n/8]|=1<<(n%8);
在n<0时就会出错(n是从文件读进的int)
how about this:
void print_missing_one_pass(char *file_name)
{
ifstream infile(file_name);
assert(infile);
int size=0x20000000;
char *flag=new char[size];
memset(flag, 0, size);
int i;
while (infile >> i)
{
int byte=(unsigned)i>>3;
int bit=i&7;
flag[byte]|=1< }

for (unsigned k=0; k {
char t=flag[k];
if (t!='\xff')
... 阅读全帖
l*********8
发帖数: 4642
38
来自主题: JobHunting版 - 一个CS题目,大家帮我看一下吧
直接读出每个32-bit unsigned int,结果加到64-bit unsigned int里面就可以了,又
不会溢出。
d*******u
发帖数: 186
39
来自主题: JobHunting版 - Question about Leetcode: Maximum rectangle
Hello,
The following code can pass the Leetcode test, if it ran separately.
But it can not pass the Leetcode online. Any problem? thanks.
class Solution {
public:
int largestAreaunderHistogramv(vector histogram, int size)
{
stack histindexlessthan;
int *area = new int[size];

int left = -1;
//get Li
for(int i=0; i {
while(!histindexlessthan.empty())
{
if(histogram[i] <= histogram[histindexlessthan.top()])
... 阅读全帖
l*****a
发帖数: 559
40
来自主题: JobHunting版 - google和twitter的onsite面经
是不是这么一个simulation。如果是的话,单纯用统计能否得出同样的答案。
void probabilty(int n,int x,unsigned long long& cnt, unsigned long long&
totalCnt){
if(n == 0){
totalCnt++;
if(x == 0){
cnt++;
}
return;
}
probabilty(n - 1, x - 1, cnt, totalCnt);
probabilty(n - 1, x + 1, cnt, totalCnt);
}
cout<<(double)cnt / (double)totalCnt<
l*****a
发帖数: 559
41
来自主题: JobHunting版 - google和twitter的onsite面经
是不是这么一个simulation。如果是的话,单纯用统计能否得出同样的答案。
void probabilty(int n,int x,unsigned long long& cnt, unsigned long long&
totalCnt){
if(n == 0){
totalCnt++;
if(x == 0){
cnt++;
}
return;
}
probabilty(n - 1, x - 1, cnt, totalCnt);
probabilty(n - 1, x + 1, cnt, totalCnt);
}
cout<<(double)cnt / (double)totalCnt<
s**x
发帖数: 7506
42
来自主题: JobHunting版 - counting quickperm algorithm
this is used to do permutation without recursion.
哪位大侠能解释一下如何理解 这两句?
// IF i is odd then j = p[i] otherwise j = 0
// swap(a[j], a[i])
这个是算法的核心, 想了半天也不理解, 算法当然是对的。

http://www.freewebs.com/permute/quickperm.html
thanks!!!
// NOTICE: Copyright 2008, Phillip Paul Fuchs
#define N 12 // number of elements to permute. Let N > 2
void QuickPerm(void) {
unsigned int a[N], p[N];
register unsigned int i, j, tmp; // Upper Index i; Lower Index j
for(i = 0; i < N; i++) { // initialize... 阅读全帖
d****n
发帖数: 1637
43
看了下楼主的《剑指Offer——名企面试官精讲典型编程题》
第7章,第一个实例简直就是面试官装B的一个实例。
说什么atoi 返回0的时候也可能是错误,会设置一个全局变量。
根本就是瞎扯。或者说最近的libc里面根本没有提。害的我找了一圈
###############man 3 atoi :############
DESCRIPTION
The atoi() function converts the initial portion of the string
pointed to by nptr to int. The behaviour is the same as
strtol(nptr, (char **)NULL, 10);
except that atoi() does not detect errors.
###############atoi.c###################
00001 /*
00002 * This file is shared between libc and the kern... 阅读全帖
x******a
发帖数: 6336
44
//main()
#include
#include
#include "linkedlist.h"
int main()
{
LinkedList myList(5, "luke");
Iterator myIterator=myList.begin();
myList.insert(myIterator, "leia");
myIterator.forward();
myList.erase(myIterator);
myList.insert(myIterator, "chewbca"); 《======出问题。
myList[2]="han";
for (int i=0; i std::cout< }
myList.insert(myIterator, "chewbca"); 《======出问题。
这一句运行起来ta... 阅读全帖
j******2
发帖数: 362
45
来自主题: JobHunting版 - srand()的问题
如果在一个函数里
int rand_n(int n)
{
srand ( (unsigned)time(NULL) );
return rand()%n;
}
void main()
{
for(int i=0;i<1000;i++)
cout< }
出来就全部一个数。
如果改成
int rand_n(int n)
{
return rand()%n;
}
void main()
{
srand ( (unsigned)time(NULL) );
for(int i=0;i<1000;i++)
cout< }
就对了。
敢问这是为虾米呢?
j*****y
发帖数: 1071
46
来自主题: JobHunting版 - BB onsite惨败而归 血的教训!
bless
那个 memset的有些疑问,比如我写了这个 code
#include
#include
using namespace std;
int main()
{
int a[4];
memset(a, -1, sizeof(a));
for(int i = 0; i < 4; ++i)
{
cout << a[i] << endl;
}
}
出来的的 是
-1
-1
-1
-1
好像和 memset的 documentation不太一致阿:
void * memset ( void * ptr, int value, size_t num );
Fill block of memory
Sets the first num bytes of the block of memory pointed by ptr to the
specified value (interpreted as an unsigned char).
... 阅读全帖
j*****y
发帖数: 1071
47
来自主题: JobHunting版 - BB onsite惨败而归 血的教训!
bless
那个 memset的有些疑问,比如我写了这个 code
#include
#include
using namespace std;
int main()
{
int a[4];
memset(a, -1, sizeof(a));
for(int i = 0; i < 4; ++i)
{
cout << a[i] << endl;
}
}
出来的的 是
-1
-1
-1
-1
好像和 memset的 documentation不太一致阿:
void * memset ( void * ptr, int value, size_t num );
Fill block of memory
Sets the first num bytes of the block of memory pointed by ptr to the
specified value (interpreted as an unsigned char).
... 阅读全帖
b******7
发帖数: 92
48
void * align_malloc(unsigned int size, unsigned int align);
void aligned_free(void * addr);
align_malloc函数要求你返回的内存地址时align的倍数,比如你调用malloc(size)申
请内存时返回的内存地址是不可控的,不一定满足是align的倍数。
c**1
发帖数: 71
49
来自主题: JobHunting版 - 上个啰嗦的2西格玛失败面经吧
bool isPowerOf4(unsigned x)
{
return x
&& ( x & (x-1) ) == 0
&& ( x & ((unsigned)(-1) / 3));
}
r**h
发帖数: 1288
50
Yelp这家第一轮HR Screen的时候,HR会问你一些CS方面的基础问题
个人根据自己被问到的经历和玻璃门上的面经总结了一下(实际上没有这么多题不过基
本上都在里面),希望对申请他家的各位有所帮助
1. size of unsigned integer
2. http port no.?
3. ssl full form? (Secure Socket Layer, Encrypt in Transportation layer)
4. use of grep and kill
5. the runtime of adding something to a linked list? O(N)
6. SSL和TLS(Transport Layer Security)的区别:TLS是SSL的升级版(TLS3.0 =
SSL1.0)TLS先handshake再secure
7. hashmaps, DNS(Domain Name System),
8. python native datatypes Boolean, Number, String, Byte, List, ... 阅读全帖
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)