V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ipwx  ›  全部回复第 71 页 / 共 200 页
回复总数  3991
1 ... 67  68  69  70  71  72  73  74  75  76 ... 200  
@missder @chaowang C++ 的一些评论见我上面的楼。

另外编辑器的问题,我觉得是作者设计上和实现上偷懒了。C++ 最快的写法写起来还挺累人的,各种奇迹淫巧那不是炫技,而是用了就比 C 快,不用就比 C 慢很多。我写 C++ 经常不开优化比开优化慢 5 ~ 10 倍。

另外面向优化写代码必须消除 warning,任何 C++ 标准未定义行为都要绕道走。网上不也很多段子,什么什么公司的代码一开优化就崩溃么 2333 。
@pkookp8 C++ 追求的 zero-cost abstract,template 大法超级给力。

举个例子,std::sort(vec.begin(), vec.end(), [&](const auto& lhs, const auto& rhs) { return lhs < rhs; });

这里的比较器直接被 C++ 编译器内联了(开 -O2 )。如果是 C 语言版本的快排:

bool fn(const void* a, const void *b)
qsort(..., &fn);

函数指针丢进去。除非给每个函数写特殊规则(比如 qsort 是库函数说不定还有机会),一般函数根本没有内联优化的可能性。

====

再比如 C++ 17 的各种骚操作,例如:

inline constexpr size_t pow2(int n) { return n == 0 ? 1 : 2 * pow2(n-1); }

...

template <int N>
if constexpr (pow2(N) > 1024) {
... branch A
} else {
... branch B
}

这段代码,pow2 和 constexpr 都是编译期就确定的行为,不会在运行时计算。
2021-05-14 15:49:51 +08:00
回复了 AllenHua 创建的主题 摄影 想重新买个相机,求入门全画幅微单推荐
@AllenHua 2333 原来是直出,那只能佳能了。

你比如我,一般都后期的。(说实话调个色也就五分钟十分钟)。索尼大法的宽容度实在是好啊,有一天我拿着 a7r4,旁边另一个人拿着佳能不知道哪一款反正不是最近的,然后 ido 是室外漫展,光比强烈。然后。。。他发现他相机不行了。
2021-05-14 15:11:33 +08:00
回复了 king666wyx 创建的主题 问与答 未来程序员的出路在哪里,很迷茫
近十年是互联网 /程序员红利。程序员这种和教师、医生不一样,是没有绝对鉄饭碗的。
2021-05-14 14:39:21 +08:00
回复了 vicalloy 创建的主题 Python Python 终于决定要提升一下性能了
其实 Python 做数据分析,性能绰绰有余了。。。

你说要性能?我看了看这两个月写的 2 万多行 C++
2021-05-14 10:42:00 +08:00
回复了 passant520 创建的主题 成都 跟风问问成都,不 996 的数据科学工作机会多吗?
你还是找金融吧。互联网这种需求不太现实我觉得。。
渲染的水很深啊,OpenGL 和 DirectX 不是狼得虚名
2021-05-13 09:26:32 +08:00
回复了 ch2 创建的主题 程序员 在某大厂的朋友告诉我说,你想用台式机是不太可能的
vpn ?多一个 vpn 就多了一堆安全隐患好不好
那你的需求就是搜索引擎。。。直接找经典的信息检索教材就行。
2021-05-11 16:23:28 +08:00
回复了 lostSoul 创建的主题 MySQL 多租户系统,采用 PostgreSQL 好还是 Mysql 好
我直觉上,tenantId 是很好的方案。但是得配合分库分表,通过 tenantId 哈希到某个机器的数据库上,每个机器上又存储若干 tenantId 的数据。如果之前的数据库满了就增加机器,哈希函数改一改。如果某个租户变成狗大户就专门给他放到狗大户的机器上,狗大户的机器少放点租户,小用户的机器上多放点用户。
…… 合并的过程不仅要用二分,可能还要用优先队列。优先队列是为了 O(1) 确定哪个倒排索引的下一个元素是最前面的,二分是为了跳过某个倒排索引因为太靠前了和别的倒排索引根本不可能相交的位置。
最后补充一句:因为倒排索引是根据位置排序的,多个倒排索引 + 不能超过 20 个字符误差范围这个条件能快速进行多路倒排索引的合并。合并过程可以用二分。。。总之是挺复杂的一个程序,但可以很快。
筛选这一步太麻烦了,楼下贤者可以补充。
如果只是针对一个查询串:带边界条件的 edit-distance 算法?复杂度大概是 O(MN) 感觉。。。( M=100 万,N=20 )

如果针对很多很多查询串:把大字符串预先拆成重叠的 k-字符(比如 3 ),然后针对这些 k-字符建立倒排索引。然后用查询串的 k-字符去取出相关的索引,根据索引的先后位置和匹配次数你可以快速筛选出可能匹配的位置。最后针对这些位置做一次 edit-distance 最终确认。
2021-05-11 12:52:54 +08:00
回复了 imn1 创建的主题 Windows windows 有没有这种自动移动文件的工具?
奥错了还有子目录。那就用 python glob 吧
2021-05-11 12:52:32 +08:00
回复了 imn1 创建的主题 Windows windows 有没有这种自动移动文件的工具?
伪代码:

while true: {
mkdir -p D:\a\
mv C:\abc\*.zip D:\a\
sleep 10
}
2021-05-10 15:13:05 +08:00
回复了 vueli 创建的主题 程序员 我天真的以为全栈说的是前后端, 现在才知道原来是 全干!
顺便我第一次听说以深入了解某个公司(还不是大厂)的业务为荣的。那这个公司倒了你不也照样失业?
2021-05-10 15:12:27 +08:00
回复了 vueli 创建的主题 程序员 我天真的以为全栈说的是前后端, 现在才知道原来是 全干!
@darknoll 你说的这种不算全栈,确实如你所说是干杂活的。
1 ... 67  68  69  70  71  72  73  74  75  76 ... 200  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2117 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 38ms · UTC 11:20 · PVG 19:20 · LAX 04:20 · JFK 07:20
Developed with CodeLauncher
♥ Do have faith in what you're doing.