获得徽章 0
- 就前两天一个学长聊天聊到的一个面试题:
一对夫妻生了两个孩子,已知一个是男孩,问另一个是女孩的概率是多少?
答案:2/3。
我们当时都很疑惑,这生男女孩不就是X和Y染色体两种情况吗?怎么想都是1/2啊?
学长说他也很疑惑,于是问了下为什么,面试官说:因为生两个孩子加起来是四种情况:男男,男女,女男,女女。因此剩下的那个孩子是女生的概率就是2/3。
后来自己查证了一下,应该是题目有歧义,如果说这两个孩子是双胞胎,一起生下来的,那么才是2/3;如果是一前以后,那么他们是独立事件,就是1/2;
但最想吐槽的还是,这种题有什么意义吗?
活动链接:展开6点赞 - 补个卡
说到这个我不得不提一个有关微任务和宏任务执行顺序的问题。请看:
async function async1() {
console.log("async1 start");
await async2();
console.log("async1 end");
setTimeout(() => {
console.log('timer1')
}, 0)
}
async function async2() {
setTimeout(() => {
console.log('timer2')
}, 0)
console.log("async2");
}
async1();
setTimeout(() => {
console.log('timer3')
}, 0)
console.log("start")
请写出他的执行顺序。
答案是:
async1 start
async2
start
async1 end
timer2
timer3
timer1
这个着实把我绕晕了,如果不是对promise相关以及微宏任务执行顺序理清了的话,确实蛮容易搞错。这个题来自另一位朋友的博客,从易到难都有讲解,大家如果弄不清楚可以去瞧一瞧:blog.csdn.net
展开赞过91