首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Linux下如何in-place更改文件

导言 前几天下班在地铁上,听到身边有两个小伙子在讨论,如何in-place的修改一个文件,路上想了半天没有好的办法。等到了家里一番探究,终于找到可行的方案了。...什么是in-place的更改文件 所谓edit in place,顾名思义,就是当我们更改一份文件时,不可以创建任何的中间/临时文件,或者临时内存等,来完成对一份文件的修改。...如何做到 那么,我们到底能不能in place的更改一份文件呢?当然是可以的,我们可以使用mmap。...Code package main import ( "os" "syscall" ) func main() { edit_in_place("/path/to/file", 0, 'c')...} func edit_in_place(path string, offset int64, rep byte){ fd, _ := syscall.Open(path, syscall.O_RDWR

2.7K51

LeetCode41, 一道题让你明白 in-place是什么?又怎么设计in-place算法?

有经验的同学可能已经反映过来了,这是in-place的套路。 in-place并不是一个算法,而是一种思想。...如果是in-place的方法,我们则不会另外创建数组,而在原数组上进行修改。...而如果我们需要保证性能,我们则需要设置参数,来执行一个in-place的操作。 这题其实已经暗示得很明显了,我们需要存储数据,但是又不让我们申请空间,于是我们只有in-place一条路可以走了。...我乍看到这种算法的时候还是很惊艳的,后来想到了in-place之后,又觉得非常巧妙, 没想到利用in-place的思想还能出出这么巧妙的题。...同样,如果你事先就了解过in-place的相关处理,一定也可以对这个算法理解得更加透彻。

88020
领券