s********k 发帖数: 6180 | 1 你这个是把简单问题复杂化,这个函数就是个简单面试问题,又没有给你提供背景说复
杂的系统函数,里面出现的各种问题NULL返回值足够了。
去看看kernel里面比如strcpy的实现,这个函数复杂度和strcpy差不多。返回值用char
*没有问题。
至于你说的那种caller传buffer,理论上是不错,实际系统中大多数不会这么搞得复杂
,如果大系统的码农连函数里面做点malloc和free都搞不定,signature再好项目肯定
完蛋 |
|
T******e 发帖数: 157 | 2 对lz表示惋惜。顺便问一句,那个两个函数里返回值int是返回的什么值? |
|
c**w 发帖数: 1024 | 3 两个公司都挂了,但是还是上个面经。
amz 电面2轮,onsite 5轮,每轮1个小时
电面1: 2sum, 2个stack实现queue
电面2: 实现fixed size的queue, OOD设计题:2个电梯调度的设计
onsite round 1: 在2个等长排序数组中找第k大的元素。
有一个n*n的array,里面的数是1-n^2。找出连续递增的最长序列的长度。方向可以是
上下左右。
比如:
1 3
2 4
最长的递增是3,可以是1->2->4 也可以是1->3->4
round 2: 全behavior,这轮挂了,因为表示了觉得以前的工作没意思。这轮的结
论是没有领导力。所以behavior还是要好好准备。amz很在乎的一点是leadership
principle
round 3: map里面新增一个updateAll(int val1),调用后,get(key)返回值都是val1
。但是之后如果set(key, val2)后,get(key)返回值是val2.要求所有操作都o(1)。
第二题是count sort变种,不难。
round 4: OOD设计机场调度系统。这轮... 阅读全帖 |
|
u*****n 发帖数: 126 | 4 一个多月前面的,据信。
Coding challenge:
1' BlockingQueue + Producer/Consumer
2' 测试:
检查一个程序。如果返回值为0,打印correct,如果返回值为1,打印fail,否则打印
exception
onsite:
1‘ 设计一个数据库储存每个人的通讯录。怎么保证每个操作是atomic的(
transaction)。
2‘ 简单版的连词游戏。找出所有可能的词。
3’ 设计一个shopping cart, 实现addItem(String userID, int itemID,
ConcurrentHashMap> cart),假设vector的
operation是atomic的,请问何时会出现race condition? 如何用putIfNotExist
&updateIfExist来解决?
4‘ 把coding challenge的第二题重新解释一遍。 |
|
g********t 发帖数: 212 | 5 额 那道题目的话,完整是给你int read_buffer(char*buffer, int len),返回值是-1
或者填好的buffer的大小。如果不是-1需要可能再次调用,再取下一段。
我讨论了这些内容:
1. read_line()的返回值怎么传: 在read_line()里面分配好,还是api调用者分配好把
大小传进来? 如果用c++既有的string类,跨函数体的时候复制是怎么做的,内部内存
表示是怎样的?这些实现在这个scenario里面会有哪些缺陷?在这个scenario里会产生
内存fragmentation吗?有没有办法用一个自己管理的内存池减少fragmentation?当然
,难的设计只是提一下,也没有时间写出来。
2. 然后我用了一个read_line()自己的可以复用的固定大小buffer,一个指针指到上次
自己的内部buffer用了多少了,再遇到read_line就找下一个'n',如果用完了就把
buffer刷新。还有一些边界判定,比如上次取下来的buffer没有取满之类的。
3. 最后简化解是,最后写代码就用了unique_ptr, 里面... 阅读全帖 |
|
g********t 发帖数: 212 | 6 额 那道题目的话,完整是给你int read_buffer(char*buffer, int len),返回值是-1
或者填好的buffer的大小。如果不是-1需要可能再次调用,再取下一段。
我讨论了这些内容:
1. read_line()的返回值怎么传: 在read_line()里面分配好,还是api调用者分配好把
大小传进来? 如果用c++既有的string类,跨函数体的时候复制是怎么做的,内部内存
表示是怎样的?这些实现在这个scenario里面会有哪些缺陷?在这个scenario里会产生
内存fragmentation吗?有没有办法用一个自己管理的内存池减少fragmentation?当然
,难的设计只是提一下,也没有时间写出来。
2. 然后我用了一个read_line()自己的可以复用的固定大小buffer,一个指针指到上次
自己的内部buffer用了多少了,再遇到read_line就找下一个'n',如果用完了就把
buffer刷新。还有一些边界判定,比如上次取下来的buffer没有取满之类的。
3. 最后简化解是,最后写代码就用了unique_ptr, 里面... 阅读全帖 |
|
g**d 发帖数: 383 | 7 返回值是int,如果输入是[1,1....1],那返回值就是1呗 |
|
z***u 发帖数: 105 | 8 面试中遇到的数据结构设计题,请教有没有更好的办法。还有最后一问没有打上来,请
教如何设计最后一题。
问题: 有很多不同型号的汽车要测试,每分钟采集一个数据,比如实时的MPG(假设都
是整数), 数据格式如下:["car1", 19], ["car2" 22], ["car3" 21]...
1. 问: 设计一个数据结构来存储每个车最新的数据
答: unordered_map
2. 问: 如何改进来存一天的数据, 并且支持返回某时间段的MPG值,比如get("car1"
, 12:00,13:00)
答: unordered_map 加 map, 如unordered_map< string/*car name*/, map
time stamp*/, int/*MPG data*/> >.
map 是排好序的,用lower_bound,和upper_bound找出时间的区间返回值
3. 如果需要找出N个车,它们的平均MPG最高。如何改进已有的数据结构。
我给出的答案是multimap阅读全帖 |
|
j*****o 发帖数: 320 | 9 W2kServer/Microsoft SQL 7 Std
昨天把原来一个13G的硬盘数据用Ghost 分区到分区方式
复制到一个30G的硬盘上。整个过程没有出什么问题。
今天突然发现不管输入什么搜索串,全文检索都只返回空值了。
比如:select * from inventory where contains(name, '"3D*"')
这条指令原来都是好好的。
但是使用'select * from inventory',能得到完全正确的
返回值。
检查系统:FullText Search service工作正常。重新定义
全文检索后,现象依旧。
那位能给点提示吗? 谢谢。 |
|
r*****l 发帖数: 2859 | 10
狭义地说,comparator()的返回值是给“别的class的”
constructor用的。不是给自己用的。所以不能是private。
maticfat解释得比较清楚了。
广义地说,comparator()的意义是告诉别人“我是怎样排序的”。
如果comparator()的返回值是null,那么这个SortedSet里面的
element必须implements Comparable(),SortedSet用Comparable()
排序。 |
|
t******r 发帖数: 209 | 11 看primer,
"+"一般作为非成员,因为这样两个操作数都可以type conversion.
但"+"作为右值返回,应该是const type,就是不可改变的,
那为啥再primer里面返回值type,就是可以改变的呢?(primer第508) |
|
a**a 发帖数: 416 | 12 非常不幸。编译器从来不会自动找.h文件。这是因为兼容古老的c带来的混淆。
在C的石器时代,函数无须声明就可以使用,编译器也不检查你的调用方式是否正确。
编译器唯一关注的是你的函数名。所以你写add(1,1)的时候,编译器假设你有个
地方提供了add这个函数,然后自动为你生成调用代码。至于子程序被调用后是否
能正确运行,或者调用者对被调用者的返回值的假设是否正确,编译器是不管的。
到了C的古典时代,为了在编译期间就能检查出调用方式类型的错误,编译器几乎
是强制性地要求程序员提供函数调用的参数类型和返回值类型。但是为了兼容
古老的石器代码,很多C编译器在不提供函数声明的情况下,会自动根据上下文
假定一个声明,并额外地警告一下。C++的编译器也沿袭了这一传统。所以你不包含
vector.h头文件的时候,第一个main仍然可以通过。但是第二个程序的TEST::main
完全是C++代码,不可能按照C习惯来解释,TEST即可以作名字空间解,也可以作
类名解,这两个都不可像函数那样用一个符号(其背后的实质是指针或者地址)来代替。
所以必须要有头文件。
简单地说,你的第一个程序是碰巧对了,第二个程序 |
|
m*******o 发帖数: 264 | 13 #include
using namespace std;
char* f(int i);
void main()
{
cout << f(1) << endl;
}
char* f(int i) {
char buffer[20];
strcpy(buffer, "test");
return buffer;
}
函数f到底返回的是什么,应该是个指向char类型的指针吧。
但为什么cout << f(1); 输出的是整个array: test?
还有return buffer; 返回的是buffer[20]的初始地址吧?
返回指针的函数的返回值必须是个地址吗? |
|
k**********3 发帖数: 3 | 14 关于类的疑问
1,在类的定义中,即在class的大括号里,是不是只能放函数定义,函数声明,变量定
义,变量声明这四类语句?
2,在private部分可以放函数定义或申明吗?同理在public可以放变量声明或定义吗?
3,某对象的成员函数可以访问同类的其他对象的数据(通过传入引用),无论其是
private or public,但是不能访问不同类型对象的private数据,但是可以访问其
public数据?
4,我看的书是《c++程序设计语言特别版》,在看类时(P203),发现他在声明成员函数
,若没有参数,也不写void,而是直接一个空括号,如果没有返回值 也不写void,还有
,是不是构造函数都没有返回值?
5,成员初始化是不是就两种:用初始化式;或用构造函数,且前者优先级高?用初始化
式什么意思,直接在成员变量申明的时候直接赋值语句吗?
6,关于成员常量的问题:
书上说了“对于静态常量整型成员,可在常量成员声明加上一个常量表达式作为初始式
”,但对于其他类型的常量呢?怎么初始化啊?
7,关于自定义类型的数组的初始化
书上也说了,“若在构造某个类的对象时可以不提供显式的初始式,则可以 |
|
y***d 发帖数: 2330 | 15 ff
ff() ff 是一个函数
*ff() ff 返回一个指针
*ff(xxx) ff 的参数是 xxx
(*ff())() ff 返回的指针指向一个函数
char *(*ff())() 这个函数的返回返回值是 char *
* () 的优先级问题 |
|
w***g 发帖数: 5958 | 16 原来C++的main是特殊编译的!
试了一下发现真是的。下面一段程序用gcc编译返回值为20,用g++编译返回值为0。太
牛了!
#include
int foo () {
return 20;
}
int main (int argc, char *argv[]) {
foo();
} |
|
z****e 发帖数: 2024 | 17 非常赞红猪侠说的那个"&".我也受教了。
thrust以前也提醒过这个"&"。需要牢记啊!
我再狗尾续貂罗嗦几句,你可以这样理解:
成员函数指针的定义是:
返回值 (类名::*指针名)(参数表)=&类名:: 成员函数名;
成员函数名: foo
返回值: int
参数表: 空
类名:X
指针名: Y::p
由于 p 是static的,所以必须定义。而,
int (X::*Y::p)() = &X::foo;
就是p的定义。 |
|
f*******s 发帖数: 440 | 18 恩 我的程序正式这样做的
我前面也说过了,
把这个base对象放在处理类
class imageDisplay{
Base * data;
}
但问题是怎么在imageDisplay或者在main()中使用这个类呢?
用那个虚process函数的话,没有参数或者返回值啊
一旦参数或者返回值带T
又会碰到同样的问题 |
|
p*********t 发帖数: 2690 | 19 fun1()在返回一个局部变量的地址,所以输出的是這個地址的值,因为fun1()的局部变
量在函数结束时消失,那个地址可能又被分配了新的值,所以是乱码。
要想输出abc,可以在fun1()的str设为static,这样即使fun1()函数结束,str[]还是在
内存存在。
char *fun1() {
static char str[]="ABC";
return (str);
}
有下面这段code, 为什么fun1()输出乱码, 而fun2()输出正确: ABC.
====== code ============
#include
int main() {
char *fun1(), *fun2();
printf("%s\n%s\n", fun1(), fun2());
return 0;
}
char *fun1() {
char str[]="ABC";
return (str);
}
char *fun2() {
char (*str)[]="ABC";
return (str);
... 阅读全帖 |
|
o**2 发帖数: 168 | 20 前言
===========================================================
FMP的核心理论一直没有变过, 之所以有1.0、2.0、3.0, 是因为分阶段推广的原因,
不同阶段对功能的要求有不同的取舍。 从目前的结果来看, 我的推广策划能力远远
不及我的编程能力, 所以干脆把FMP的全部功能一起推出来了, 也就是3.0。
3.0的东西我还没有在其他地方发过, 我觉得Mitbbs的小圈子挺不错的, 非常适合先
试试水, 希望能听听大家的意见, 高见和低见都欢迎, 只要不歪楼都行。 我在这里
邀请所有的人来参加讨论, 特别是zhaoce和goodbug, 我挺认同你们平时的一些看法
的, 希望你们能对3.0给出一些专业的意见。
FMP针对的是并发和分布编程, 并发主要是在单机内, 分布就是多机了。 FMP的独特
贡献是提供了一个统一的language independent的编程style和element, 轻松地把这
两个重大问题都解决了。 FMP提供的不是具体的系统或实现, FMP提供的是一个独创的
简洁的设计, 使得设计并发和分布系统... 阅读全帖 |
|
T********i 发帖数: 2416 | 21 你的问题在于不知道atomicint操作后还有返回值,以及返回值怎么用。
从你纠缠compexch来看,你根本就是迄今都不懂。
这个懂行的看得很清楚。眼里揉不得沙子的。 |
|
N******K 发帖数: 10202 | 22 std::move rvalue reference
move constructor
这些东西真是好用
现在可以直接传值进函数 返回值 不用new一个东西再返回这种 古老的玩意
初步测试 性能接近 armadillo 线性组合运算比armadillo 快1~2倍 -》这是没有用
任何并行库的条件下
矩阵运算表达式可以跟matlab一样 直接ctrl-c ctrl-v 改一改 就行了
举个例子:
A B C为矩阵
c++代码
C = 1.0 + A*A + A * (10.0 + A*B({0,1,2}, {0,1,2}));
Matlab代码
C = 1.0 + A*A + A * (10.0 + A*B([1,2,3], [1,2,3])); |
|
e*******o 发帖数: 4654 | 23 他的意思是应该msg 不显示。
这个是php返回值的的问题。
to lz,debug下php 的返回值。
你为啥把async 弄成false? 你末尾那个responseText 也有问题。没见过这种写法。
这里有例子,你比着规范一下。
搜jquery文档。 写全网站会删帖。
ajax
ps:你可以直接用post,多省事。
jQuery.post
你那个str 也不对,action那部分不要。只有后面的参数部分。最好直接用object,让
jquery做剩下的。
我自己也是半瓶错,看了我以前的code才发现。 |
|
d*******r 发帖数: 3299 | 24 问个问题,为什么语言不设计成让每一个 function 都能有一个返回值: unexpected_
return_value, 然后所有函数的 caller 都必须强制 check和处理这个值呢? 这样算是
算用 return value 实现了 exception?
我的意思是说,编程语言本身,在未知错误下,能确保 function 返回这个
unexpected_return_value.
当然,很久前学 C++ exception 时候,记得说 exception 还有个所谓好处: 把处理错
误的代码和正常逻辑的代码分开. |
|
d*******r 发帖数: 3299 | 25 问个问题,为什么语言不设计成让每一个 function 都能有一个返回值: unexpected_
return_value, 然后所有函数的 caller 都必须强制 check和处理这个值呢? 这样算是
算用 return value 实现了 exception?
我的意思是说,编程语言本身,在未知错误下,能确保 function 返回这个
unexpected_return_value.
当然,很久前学 C++ exception 时候,记得说 exception 还有个所谓好处: 把处理错
误的代码和正常逻辑的代码分开. |
|
w*h 发帖数: 286 | 26 定义了一个类ASMEEllipsoid继承了EllipsoidVisual3D
public class ASMEEllipsoid : EllipsoidVisual3D
{
.....
public CuttingPlaneGroup CreateEllipsoidalHead()
{
CuttingPlaneGroup semiEllipsoid = new CuttingPlaneGroup();
EllipsoidVisual3D outsideEllipsoidalHead = new
EllipsoidVisual3D();
.....
semiEllipsoid.Children.Add(outsideEllipsoidalHead);
.....
... 阅读全帖 |
|
w***g 发帖数: 5958 | 27 我随便review一下。属于站着说话不要疼的。
1. 软件定位
kv-store以及B+-tree都是几十年的老技术了,很难有innovation。基本上都是在同样
的接口上拼性能。不新鲜。
2. 实现难度
B+-tree实现那是公认的难的,基于磁盘的B+-tree实现更是难。就凭这一点,这个项
目就很值得尊敬。从实现难度上来说比redis这种杂牌军强多了。从他给的
benchmark来说,性能也相当不错。
不过benchmark做起来很tricky。比如leveldb的目标是嵌入式设备,优化目标是
小内存。它的benchmark允许用2GB内存,如对象数是1M * 512左右,也就是说
所有对象大小加起来其实不足2GB。如果真要正经做benchmark,2GB的cache,
数据量至少要20GB才行。(我看得很糙,短时间不可能完全看明白技术细节,
所以可能有不对的地方。)
3. 代码质量
从扩展名看是C++,但其实代码里面都是C。这一点我觉得在今天的硬件技术环境下并
不可取。代码里几乎所有的malloc都没有检查返回值。从他的文档看,他针对的主
存储是SSD。那样内存就是cache(... 阅读全帖 |
|
s*********9 发帖数: 241 | 28 我也是刚刚查到的,汗!以前都没有听说过~
1、任务可以调用任务,也可以调用函数;而函数只能调用函数,不能调用任务。
3、函数自少要有一个输入变量,而任务可以没有输入变量,也可以有一个或者多个输
入变量。
4、函数需要返回一个值,而任务则不返回值
2、函数的仿真函数只能与主模块共用一个仿真时间单位;而任务可以定义自己的仿真
时间单位。 |
|
b***m 发帖数: 5987 | 29 一点儿也不传奇。就是一普通面试。如果面的是CEO职位估计能传奇点儿。废话少说,
上面经(题都很传统):
第一轮面试是俩人,一个白人小伙子,一个印度女孩儿。写一个函数,输入是字符串,
输出是布尔值,判断字符串中括号的匹配,比如“()()()”、“((()))”是匹配的,“
()))”是不匹配的。扩展开,可以接受{}和[],甚至任何自定义符号。写完函数后提供
test case。
第二轮是个中年白人,明显是抓壮丁来的,没有技术面试,纯粹瞎扯,扯的过程中不断
看钟,口中念念有词这45分钟怎么打法。由于我做过10年游戏,于是跟他狂侃游戏开发
,包括怎么做到让游戏不crash,如何让游戏跑得更快、用更少的硬件资源。
第三轮是个development manager,印度人,不是HM,但是负责带我去吃中饭。我俩下
楼去附近的一家意大利店,一人买了一个三明治、一瓶可乐,然后回来在会议室边吃边
聊。基本行为问题居多,出了一个brainstorm题:用户在客户端浏览订单信息,页面狂
慢,怎么分析可能的原因?基本架构是:浏览器连load balancer(LB),LB连
application serve... 阅读全帖 |
|
b*****9 发帖数: 8922 | 30 ☆─────────────────────────────────────☆
go88 (旧友重来) 于 (Fri Oct 14 20:24:57 2011, 美东) 提到:
今天是苹果公司最新款IPHONE4S手机在他们选定的欧美日本等五个最优先国家上市的日子。另外今天也是苹果粉丝为纪念几天前去世的苹果教主乔布斯逝世而发起的乔布斯日。在这一天里这些粉丝们会自发穿戴得像乔布斯一样来纪念他。我很佩服苹果公司,我更佩服乔布斯,所以在这
妓谷眨硎疽幌露郧遣妓沟某缇春突衬睢br />
乔布斯逝世之后,对乔布斯的怀念不但在美国占据了各种主流媒体,很多普通人也都由衷地为乔布斯的英年早逝而感到惋惜。在国内,乔布斯更成为一个文化向往的符号和理想世界里的英雄。很多人都在谈论为什么中国出不了一个乔布斯,还有人认真地要计划培养成百上千个中国的乔
T谡飧銮遣妓谷绽铮乙惨硎疽幌露运姓庑┛捶ǖ娜贤椭戮础N颐侨肥敌枰约旱那遣妓埂br />
只是,我们需要的,是乔布斯天才的传奇和光环里的哪一部分?回答这个问题之前,我想先告诉大家,其实在乔布斯和苹果的传奇和光环里,咱全球华人已经拿到了一部分!!就在昨天,台... 阅读全帖 |
|
J*******3 发帖数: 1651 | 31 宝马女为了骂人快感遭灭门 值吗?
一时尚女子驾一辆宝马路过一个自行车修理摊,刮倒了一辆待修的自行车。女子急停后
下车,要求修车师傅赔偿其损失,并对修车师傅百般辱骂。说是自行车刮了她的宝马,
刚开始,修车师傅据理力争,说明是对方驾车撞倒自己区域内的东西,对方应承担主要
责任。
点击图片看原样大小图片 点
击
图
片
看
原
图
时尚女子哪肯罢休,于是上前推搡修车师傅。修车师傅挥手阻拦,碰巧把时尚女子衣服
弄脏。出现此等变故,时尚女子更是不依不饶。便放言,车子的事情暂且不算,必须先
拿3000 元出来赔自己衣服。事情发展到这时,有很多人围观,也曾有过路者出面调解。
修车师傅也忍气吞声的向时尚女子道歉,并且表示愿意为她清洗衣服。可时尚女子并不
领情,继续辱骂修车师傅和上前调解的过路者,同时掏出了她的手机开始求援。此时此
刻,她所做的是一个足以让她悔恨终身的错位决定。因为她的生命仅仅剩下不足一小时
。时尚女子求援的正是她的父母,她们一家三口就住在对面的贵族社区。她的父亲到现
场后,并没有对事情原委做任何的了解,便直接抄起了地上的自行车打气筒朝修车师傅
头部猛砸数下。顿时,修车师傅头部血如... 阅读全帖 |
|
i***s 发帖数: 39120 | 32 明星们常常出国工作需要通过海关,有时候也因为种种原因被海关扣留盘问,说起被海关盘查的原因,也是五花八门,颇为有趣。
2月15日,吴京在微博透露他在南非约翰内斯堡被海关扣押;2月19日,徐静蕾也在微博自曝在泰国曼谷被海关扣留一小时。明星们常常出国工作需要通过海关,有时候也因为种种原因被海关扣留盘问,林忆莲、陈慧娴、周杰伦、韩寒、何润东、贾斯汀·比伯等等都有此遭遇。说起被海关盘查的原因,也是五花八门,颇为有趣。
谁没有点小癖好?
一不小心就“走私”了珠子、安全套
从过百盒安全套到难以计数的珠子,网友们脑洞再大也想不出明星行囊里那些奇奇怪怪的东西,于是,这些东西被海关扣押了。被怀疑走私这些小玩意,也是让明星尴尬之余也啼笑皆非。
2月19日凌晨,徐静蕾在微博上透露自己被当成倒卖珠子的,因而在曼谷海关被扣留了一小时。徐静蕾微博原文:“被当成倒卖珠子的扣在了曼谷海关一小时,从一个地方被换到另一个地方讯问,怎么解释说是爱好都不行,抓狂,后来,俺灵机一动……说、你看啊,我坐一头等舱,倒卖这几盒珠子,你觉得能划算吗……真心是爱好啊……DIY啊……兴趣啊……那妹妹一听,对啊,没这么做生意的啊……没有这种笨... 阅读全帖 |
|
a***s 发帖数: 12296 | 33 演员赵又廷出席汽车品牌发布会,为新车发布造势。作为该车型代言人,赵又廷一改平日稳重形象,笑说自己颜值高又充满活力,与该车型的定位十分吻合,找他代言很合适。而主持人乐嘉则调侃起自己睾丸受伤的事,称现在已经痊愈并且成为这方面的专家,希望以后有类似情况的人找他咨询。
作为活动主持人登场的乐嘉开场就拿自己的受伤事件调侃。称自己在某活动录制时受伤,确实撞坏了一只睾丸,不过经过治疗后已经无碍,而且比以前更好。乐嘉更表示,以后有类似情况的人可以找他咨询,他在这方面可以称为专家,引得全场爆笑。
作为品牌代言人,赵又廷登场便引得全场粉丝尖叫连连。赵又廷表示,当找到他做代言时,“我们需要一位又有颜值又有气质的人”一句话就打动了他。赵又廷笑称,自己颜值气质都很高,又充满了活力,当然是最合适的人选了。当大屏幕打出“赵又廷,去追吧,没有什么能够阻挡你的爱。”乐嘉马上表示,会不会当时就因为这个信念,才追到了高圆圆?一脸无辜的赵又廷只好用微笑来回答乐嘉。
此前报道:高圆圆婚后两年肚皮没动静 被曝在台湾看妇产科
据台湾媒体报道,大陆女星高圆圆出道约20多年,和相差5岁的赵又廷于2014年结婚,被誉为“王子和公主的组合... 阅读全帖 |
|
W***o 发帖数: 6519 | 34 【 以下文字转载自 ChinaNews 讨论区 】
发信人: Wardo (Wardo), 信区: ChinaNews
标 题: 宝马女为了骂人快感遭灭门 值吗? 宝马女太作死了
发信站: BBS 未名空间站 (Sat Aug 9 23:20:09 2014, 美东)
http://www.popyard.com/cgi-mod/newspage.cgi?num=1955129&r=0&v=0
一时尚女子驾一辆宝马路过一个自行车修理摊,刮倒了一辆待修的自行车。女子急停后
下车,要求修车师傅赔偿其损失,并对修车师傅百般辱骂。说是自行车刮了她的宝马,
刚开始,修车师傅据理力争,说明是对方驾车撞倒自己区域内的东西,对方应承担主要
责任。
时尚女子哪肯罢休,于是上前推搡修车师傅。修车师傅挥手阻拦,碰巧把时尚女子衣服
弄脏。出现此等变故,时尚女子更是不依不饶。便放言,车子的事情暂且不算,必须先
拿3000 元出来赔自己衣服。事情发展到这时,有很多人围观,也曾有过路者出面调解。
修车师傅也忍气吞声的向时尚女子道歉,并且表示愿意为她清洗衣服。可时尚女子并不
领情,继续辱骂修车师傅和上前调解的过路... 阅读全帖 |
|
t**n 发帖数: 272 | 35 如果这个子程序是一个leaf sub (它不再调用其它程序)
用link register里的返回地址会让返回快一点
但是如果它不是leaf sub, somehow link register里的值是会变的
你这是面embedded software? |
|
c****p 发帖数: 6474 | 36 没有。。。。。。
getchar()返回值是int,所以EOF返回-1,0xff返回255。
所以没问题。
char |
|
s*****y 发帖数: 897 | 37 http://zebozhuang.blog.163.com/blog/static/17147980420112710523
在标准库算法中,next_permutation应用在数列操作上比较广泛.这个函数可以计算一组
数据的全排列.但是怎么用,原理如何,我做了简单的剖析.
首先查看stl中相关信息.
函数原型:
template
bool next_permutation(
BidirectionalIterator _First,
BidirectionalIterator _Last
);
template
bool next_permutation(
BidirectionalIterator _First,
BidirectionalIterator _Last,
BinaryPredicate _Comp
);
两个重载函数,第... 阅读全帖 |
|
s*****y 发帖数: 897 | 38 http://zebozhuang.blog.163.com/blog/static/17147980420112710523
在标准库算法中,next_permutation应用在数列操作上比较广泛.这个函数可以计算一组
数据的全排列.但是怎么用,原理如何,我做了简单的剖析.
首先查看stl中相关信息.
函数原型:
template
bool next_permutation(
BidirectionalIterator _First,
BidirectionalIterator _Last
);
template
bool next_permutation(
BidirectionalIterator _First,
BidirectionalIterator _Last,
BinaryPredicate _Comp
);
两个重载函数,第... 阅读全帖 |
|
i**d 发帖数: 357 | 39 你deleteMin返回引用,这是个很低级的错误。会让面试官觉得你C++的基本概念都没搞
清楚。
这个地方肯定让你失分不少...
他又问DeleteMin怎么写,我说T DeleteMin()或者T& DeleteMin(), 前者返回值,要调
用拷贝构造函数,因此慢。后者返回引用,快。他说后面那个有问题,然后画了个队列
,好像是说元素被删除出队列后,对象被析构了。 |
|
l*******g 发帖数: 82 | 40
不用客气。大家都是互相讨论,多虑了。
设计模式的学习本身更像是一种思维模式的修炼,所以,没有太所谓的过时不过是一说
,就比如singleton这个设计模式,很多开源框架依然使用,更经典的就是factory和
abstract factory模式了。
至于你说的变这个事情,其实在变,只不过属于万变不离其中,比如iOS程序开发的人
都知道delegate模式,你如果懂得了observer模式,你就能很快掌握delegate。简单的
说,observer模式属于信息单项 - 通知/被通知, 而delegate模式中的delegator的
行为会因为delegate中不同method的返回值而作出相应改变,比如,一个delegate
method返回true和返回false,对于delegator的执行流程就会产生影响。
其实,看一下那些leetcode题用到的算法,数据结构,有的甚至比计算机本身还要早出
现。所以,IT本身日新月异,但是,很多的变化是一种应用场景的变化,而不是那些基
础理论的变化。 |
|
y*****2 发帖数: 22 | 41 第一题的印象有点模糊了。。大概是给一个数组,然后有一些数是重复的,然后找到重
复最多的那个数,比如说 int input[]={3,7,4,3,6,1,3,6},重复最多的数是3,这些3
的index分别是0 3 6,那么要求程序以相等的概率返回这3个index,
int computeIndex(int[] input);
33.3% return 0
33.3% return 3
33.3% return 6
当时因为叙述的比较绕,所以光题目就理解了半天,最后在他的提示下找到答案:先扫
第一遍,找到出现最多的那个数(比如3),然后写个random函数, 再扫第二遍,每次
遇到3就调用这个Random函数,若Random返回值大于一个阈值就返回当前的index。比如
这个函数可以是
bool ran(int size){
if(random()*size<1)
return true;
return false;
}
叙述的不好,见谅!有问题请提问~
第二题是leetcode原题,Permutation,我用递归做完之后,又让分析算法... 阅读全帖 |
|
发帖数: 1 | 42 给一个int[] data,数组大小最大100K
实现 int[] findIndices(long low, long upper),返回值从小到大排序,同一个data
,findIndices会被执行多次
例:[100, 300, 25, 123, 3, 157, 9, 103, 304], findIndices(100, 200) 返回 [0,
3, 5, 7]
我想到就两种方法:
1:loop数组一个一个比较
2:排序成 [ {3, 4}, {9, 6}, {25, 2}, {100, 0}, {103, 7}, {123, 3}, {157, 5},
{300, 1}, {304, 8} ],然后binary search low and upper,得到index的数组,再
排序这个结果,返回。如上面的列子,先得到 [{100, 0}, {103, 7}, {123, 3}, {157
, 5}],拿indces,[0, 7, 3, 5],再sort得到[0, 3, 5, 7]
2在极端的情况下会更慢,因为结果要再排序。
请教有没有更快的方法? |
|
z*l 发帖数: 763 | 43 【 以下文字转载自 Unix 讨论区 】
【 原文由 zhl 所发表 】
本令只能由有效UID等于shm_perm.cuid或shm_perm.uid的
进程或有效UID有合适权限的进程操作.
返回值:若调用成功则返回0,否则返回-1.
例子:本例包括上述所有共享内存操作系统调用:
#include
#include
#include
#define SHMKEY 74
#define K 1024
int shmid;
cleanup()
{
shmctl(shmid,IPC_RMID,0);
exit(0);
}
main()
{
int *pint;
char *addr1,*addr2;
extern char *shmat();
extern cleanup();
for (i=0;i<20;i++)
signal(i,cleanup);
shmid=shmget(SHMKEY,128*K,0777|IPC_CREAT);
addr1=shmat(shmid,0,0);
addr2=shmat(shm |
|
d***a 发帖数: 13752 | 44 假设这个每个数最多有K个bit。这个问题可以一个递归算法来解。设计一个递归函数
majority (S, k), S是整数集合,k是当前观察的bit位置。
1. 如果k=0, 数出S中bit 0分别是0和1的数目,返回两数之最大值。
2. 如果k>0, 按bit k等于0或1把S分为S0和S1,递归调用majority(S0,k-1)和majority
(S1,k-1),取两个返回值中最大值,返回之。
最开始的调用是majority(Sn, K-1), Sn是输入整数集合。算法复杂度是O(N),一共要
用K*N次比较。
这个算法是原创。:) 当然,应该是recreate the wheel。 |
|
z*******3 发帖数: 13709 | 45 抛砖引玉
吃饱了看文茜世界财经周报,看得昏昏的想睡,睡觉前赶紧写,写完睡觉去了
这样,先不从dto说起了,说tiers
一个j2ee经典的tiers最早提出来的时候,是三层,所谓的三层说的是sever side三层
不包括client side和database
三层里面分别有一层专门跟以上两个东西打交道
一个是presentation tier,这个跟client side打交道
一个是persistent tier,这个专门跟database打交道
中间还剩下一个叫做business tier,这么三层,这都很熟悉了
那么当初提出这个构想的时候
是基于以下一个方式
client side是applet+browser
presentation tier是servlet+jsp,servlet是controller,jsp是viewer
model需要你自己去提取,去包装
business tier则是ejb,尤其是session bean,stateful和stateless
persistent tier也是ejb,是entity bean
database用jdbc连接
这五个... 阅读全帖 |
|
I*******e 发帖数: 1879 | 46 ☆─────────────────────────────────────☆
island (不乐) 于 (Tue Apr 28 16:40:45 2009) 提到:
我想调用一个函数将一个数插到一个矩阵的某个位置上,比如:
function []=placeit(A,v,i,j)
A(i,j) = A(i,j) + v;
但这个好像不行,因为A是输入变量,它的新值无法返回。有什么办法可以把
一个输入变量改变之后再返回?
谢谢!
☆─────────────────────────────────────☆
thrust (祝阳阳早日康复) 于 (Tue Apr 28 18:00:28 2009) 提到:
function A_out = placeit(A, v, i, j)
A_out=A;
A_out(i, j) = A_out(i, j)+v;
then call it with
A=placeit(A, v, i, j);
All matlab function parameters are pass-by-value. Do not try t |
|
z****e 发帖数: 2024 | 47 接上面大侠的解释,我再说两句,ostream& 的返回是因为:
a. << 是 left associate 的,就是从左边开始一路 <<下去。每次<<结束就能update
一下这个被引用的ostream 对象,这样可以继续<<后面的。就是 concatenate.
b. 只要是返回一个引用,你就要想到,这是因为该函数的返回值可以作为left value
使用。 |
|
d****j 发帖数: 293 | 48 Essential C++ 第二章介绍了如何使用function pointer,我试了了一下,想获取一个
定义好的function pointer array的长度,却怎么也搞不定,请指教。
具体的问题是,有5中sequence,如fibonacci序列,squared序列,等等,假设有下列5
个对应的function,输入参数为 int size,返回一个size长度的const vector;
const vector* fibon_seq(int);
const vector* lucus_seq(int);
const vector* pell_seq(int);
const vector* triang_seq(int);
const vector* square_seq(int);
再有一个从一个vector中取出第n个元素的函数,参数为pos,要取的数字的位置,elem,
引用,存储返回值,fp,第三个是function pointer,具体如下:
bool seq_elem(int pos, int& elem, co... 阅读全帖 |
|
a*****e 发帖数: 1700 | 49 你混淆了几个概念。元编程 (Meta programming) 和函数编程 (Functional
Programming),还有静态编译的优化 (static compilation optimization) 这三者是
orthogonal 的概念,不能混为一谈。
纯函数编程一样需要输入(参数值)和输出(返回值),你把这些和 I/O 搞混了。所
谓 I/O 的输入和输出是特指有副作用的,即便将一个程序的 I/O 部分和纯函数部分划
分开来,也不表示纯函数部分能够在编译期静态执行。在编译期,如果参数仅是变量而
非确定的值的话,即便是纯函数程序也无法运行。所以“所谓的纯函数式程序只能运行
于编译期”这句话是不正确的。
如果你要说的是编译期对纯函数的程序做优化比较容易,这个确实是这样,也算是函数
语言的一个小优势。
运用模板元编程在编译期也可以完成很多事情,但这不能和函数编程混为一谈。元编程
的直观理解是生成程序的程序,所以可以利用元编程在静态编译期做一些优化工作,或
者对一些抽象的模板进行展开,但是它并不能取代函数编程本身。比如 Ocaml 和
Haskell 里面同样有模板元编程的工... 阅读全帖 |
|
c********l 发帖数: 8138 | 50 re这个
话说我这两天正好在捣鼓这个
Openssl 生成的key/cert + Tomcat 7 + APR Connector
结果发现了一个莫名其妙的bug
按照道理,只要SSL的链接成功建立,都会有Session ID
具体体现是getAttribute( "javax.servlet.request.ssl_session")必然有返回值
但是,在某种特殊条件下会诡异地返回null
也就是说,
如果客户端浏览器将self signed的证书加入root CA ,并且在不打开java.net.debug
=all的情况下,那么session ID 为null
这两个条件,只要去掉其中任意一个,session id依然能返回
不知道到底是java还是Tomcat 7还是OpenSSL的问题,总之三个里面必然有一个
有问题。 |
|