V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ipwx  ›  全部回复第 34 页 / 共 200 页
回复总数  3998
1 ... 30  31  32  33  34  35  36  37  38  39 ... 200  
2022-01-09 14:17:41 +08:00
回复了 zxCoder 创建的主题 问与答 请教一个算法/方案?
哦一维情况下可以对三个集合先排序,然后用二分查找代替建树。
2022-01-09 14:16:40 +08:00
回复了 zxCoder 创建的主题 问与答 请教一个算法/方案?
最好的算法不清楚。

使用 Ball-tree 配合应该能有复杂度 O(N log N) 的算法, 但是常数较大。具体方法就是对 ABC 三个集合建 Ball-tree ,然后 ABC 分别枚举每一个元素,在另外两个 Ball-tree 找 distance < threshold 的点,最后用 hashtable 对三元组去重。

目测最优算法也是 O(N log N) 的,但是常数比这个小。
2022-01-07 22:01:45 +08:00
回复了 mjar 创建的主题 生活 还是决定出国读博
1. 没听说韩国人 CS 多好,只听说中美年年发炼丹论文。或者是有些大佬级的做点更基础的工作。
2. 在 CS 方面,大家都比较卷,以至于那种大佬级的慢研究节奏(但是能出 fundamental 的成果)已经很少见了。。。
缓存异常吞掉挺合理,但是取数据肯定是要有载入条的
2022-01-06 23:04:42 +08:00
回复了 wyc9296 创建的主题 编程 突然觉得 C 语言字符串数组的初始化有点怪
@wxd92 ummm 我确实没仔细考虑。但是我觉得不太可能出现这种 implicit new allocated (至少不可能在堆上

https://godbolt.org/z/M6sPzsWf4

根据 compiler explorer ,是栈空间。第三种和第一种效果一致,虽然可能生成的破代码更慢。
----

顺便 gcc 拒绝在 c++ 模式下编译第三种
2022-01-06 22:49:43 +08:00
回复了 wyc9296 创建的主题 编程 突然觉得 C 语言字符串数组的初始化有点怪
在 C++ 里面就没这么奇怪了。

第一、第二种:相当于常量初始化了数组。

第三、第四种:虽然能编译,但是会警告,说其实应该赋值给 const char*。
2022-01-06 17:43:57 +08:00
回复了 Canon1014 创建的主题 程序员 高并发场景下使用 CAS 锁库存,不预防 ABA 会怎么样
ummm 想了想好像用在库存这种场景下倒也不是不可能。。。?
2022-01-06 17:42:37 +08:00
回复了 Canon1014 创建的主题 程序员 高并发场景下使用 CAS 锁库存,不预防 ABA 会怎么样
我觉得你对 CAS 锁的应用场景有些误区。库存这已经牵扯到业务数据库了,和 CAS 锁没有任何关系。

要理解 CAS 中 ABA 的棘手难题,非得写几段 C++ 程序才有感觉。。。。这也是我为啥总是觉得学习东西不能用类比,用库存这种概念去理解高并发无锁的算法,总是不得要领。
2022-01-06 10:23:48 +08:00
回复了 MiketsuSmasher 创建的主题 程序员 "0 << 1 + 1"到底是等于 0 还是 1?
一般除了加减乘除这种运算,一律加括号
2022-01-05 17:31:36 +08:00
回复了 wty95 创建的主题 问与答 会 Python 还有必要学 Excel 么?
体制内,excel 更重要,python 无所谓了啊
2022-01-05 10:46:54 +08:00
回复了 yaojin 创建的主题 问与答 没有"外挂"好累
主要还是吃的太饱。你往下看看,比你过的差的,那不是人吗?
2022-01-05 10:22:30 +08:00
回复了 kaiki 创建的主题 问与答 JS 中有没有什么简单的赋值并且不判断布尔值的写法?
1L 阅读理解满分啊。。。我看了半天也不知道楼主问的是什么
2022-01-04 22:05:51 +08:00
回复了 zhangjinghua 创建的主题 程序员 请教一个非常简单的 c 语言内存申请问题
When the application is linked with a debug version of the C run-time libraries, malloc resolves to _malloc_dbg

https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/malloc?view=msvc-170

盲猜没引入 stdlib.h 所以没解析到 _malloc_dbg ,隐式连接了正统 malloc ,然后调试器跪了
2022-01-04 16:56:13 +08:00
回复了 weimo383 创建的主题 职场话题 为何现在网络上认为字节的工作氛围比阿里更好呢?
@swulling 字节的算法研究员要负责业务落地简直窒息。

研究和工程两手都要抓,两手都没深度。
而且说实话,你这种命名约定扩展到最后就是。。。type hinting

你说是 arr: List[Union[Tuple[int, str, bool], Tuple[int, str]]] 这种更容易统一和分析呢,还是

lstTupleIntStrBoolOrTupleIntStrOfArr

更容易看?
因为大部分情况下项目已经有自己的约定了啊。。。不需要加前缀。

比如 i, j, k 肯定是整数。

s 肯定是字符串。

arr 肯定是数组。

更多时候根据语义,bookList 肯定是 List[Book]

基本都够了
恭喜你答对了。但是说实话,也就 v2 你群的很多人斤斤计较这些,大部分用户其实无所谓一个点击追踪的。。。
2022-01-03 17:15:59 +08:00
回复了 amiwrong123 创建的主题 程序员 怎么通过 VS2019 看 strlen()的源码?
@amiwrong123 你放心,C++ 世界里,越是基础的东西,魔法优化越多。

一个 std::vector 也可能有各种你看不明白的五花八门的魔法用法。建议你别看了,自己想想该怎么写就够了。
2022-01-01 19:15:19 +08:00
回复了 amiwrong123 创建的主题 程序员 怎么通过 VS2019 看 strlen()的源码?
@amiwrong123 稍微查了查,至少对 vs2008 而言,strlen 是直接用汇编写的,不是 C 代码

First CRT's one is written directly in assembler. you can see it's source code here C:\Program Files\Microsoft Visual Studio 9.0\VC\crt\src\intel\strlen.asm (this is for VS 2008)
2022-01-01 19:13:17 +08:00
回复了 amiwrong123 创建的主题 程序员 怎么通过 VS2019 看 strlen()的源码?
@amiwrong123 其实 strlen 各家的实现可能都有差别,而且可能会有魔法优化。。。。这种基础库函数反而不容易读代码。比如 gcc 的 strlen:

https://github.com/lattera/glibc/blob/master/string/strlen.c#L33

你看这个实现, /* Instead of the traditional loop which tests each character,
we will test a longword at a time. The tricky part is testing
if *any of the four* bytes in the longword in question are zero. */
1 ... 30  31  32  33  34  35  36  37  38  39 ... 200  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3743 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 10:28 · PVG 18:28 · LAX 03:28 · JFK 06:28
Developed with CodeLauncher
♥ Do have faith in what you're doing.