从文件中读取字符-多次调用read characters from file multiple calls

[抄题]:

接口:int read4(char * buf)一次从文件中读取 4 个字符。
返回值是实际读取的字符数。 例如,如果文件中只剩下 3 个字符,则返回 3。
通过使用read4 接口,实现从文件读取 n 个字符的函数int read(char * buf,int n)

[暴力解法]:

时间分析:

空间分析:

[思维问题]:

[一句话思路]:

[输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入):

[画图]:

  1. 用数组实现队列的原理是:进入时是tail移动,出去时是head移动,形成模拟队列

[一刷]:

  1. i < n表示内存需求未被满足,head < tail就正常读取。入队时不需要i++,read4已带。
  2. head tail都要初始化为0

[二刷]:

[三刷]:

[四刷]:

[五刷]:

[五分钟肉眼debug的结果]:

[总结]:

buffer是缓冲区,buf是内存

[复杂度]:Time complexity: O() Space complexity: O()

[英文数据结构或算法,为什么不用别的数据结构或算法]:

[其他解法]:

[Follow Up]:

[LC给出的题目变变变]:

[代码风格] :

原文地址:https://www.cnblogs.com/immiao0319/p/8447964.html

时间: 2024-10-07 20:33:49

从文件中读取字符-多次调用read characters from file multiple calls的相关文章

java如何在文件中读取一个字符串并创建以这个字符为名字的类的对象

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">我们一般用properties或者XML文件作为资源存储的文件,现在主要介绍一下对properties的操作</span> 1.我们在src文件下新建一个名称为config的包 2.在config下新建一个file,把它命名为demo.properties 3. 把下面的几段

VB.NET 从XML文件中读取内容到JSON

一.关于本文 本文承接了上一篇博客的内容.在上篇博客中,通过函数WriteJsonToXml将一个JSON格式的文件写入了一个对应的XML文件中.本文中则给出了函数RecoverJsonFromXml的代码,可以将XML恢复成JSON格式的文本. 运行本文中代码的环境与上篇博客相同. 待读取的XML文档内容如下: <?xml version="1.0" encoding="gb2312"?> <!--这个XML文档中存储了一个JSON格式的信息--

从属性文件中读取配置

本章是关于如何在Selenium Cucumber Framework 或任何框架中从属性文件中读取配置的.在项目中存储硬编码值是危险的,也违反了编码原则.到目前为止,我们在代码中使用了大量的硬编码值.在属性文件的帮助下,我们将逐一消除这些硬编码值. 什么是Java中的Property文件 .properties  文件主要用于Java程序,以维护项目配置数据,数据库配置或项目设置等.属性文件中的每个参数都以键值对格式存储为一对字符串,其中每个键都在一行上.您可以使用 Properties类型的

linux sed 批量替换多个文件中的字符

格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` linux sed 批量替换多个文件中的字符串 sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir` 例如:替换/home下所有文件中的www.admin99.net为admin99.net sed -i "s/www.admin99.net/admin99.net/g" `grep w

JMeter接口测试——参数化(从文件中读取参数)

从文件中读取,三个步骤 1.读取文件 2.取文件内容里面的参数,给它一个名字 3.使用值 从文件读取的话,需要在线程组里面添加一个CSV Data Set Config,它就是做前面两步的操作的 参数说明: Filename: 文件的完整路径 Variable Names(comma-delimited):储存参数的变量名 Delimiter(use '\t' for tab): 分隔多个参数的分隔符 Recycle on EOF ?:文件读取完后是否继续读取 Stop thread on EO

文件_ _android从资源文件中读取文件流并显示的方法

======== 1   android从资源文件中读取文件流并显示的方法. 在android中,假如有的文本文件,比如TXT放在raw下,要直接读取出来,放到屏幕中显示,可以这样: private void doRaw(){ InputStream is = this.getResources().openRawResource(R.raw.ziliao); try{ doRead(is); }catch(IOException e){ e.printStackTrace(); } } pri

从plist文件中读取数据

//从plist文件中读取数据- (void)readDataFromPlist{    //1.先获取文件路径    NSString * filePath = [[NSBundle mainBundle] pathForResource:@"Book" ofType:@"plist"];    //2.根据路径初始化字典对象    self.dic = [NSMutableDictionary dictionaryWithContentsOfFile:fileP

Mean and Standard Deviation-从文件中读取数据计算其平均数和标准差

Meanand Standard Deviation-从文件中读取数据计算其平均数和标准差 //Meanand Standard Deviation-从文件中读取数据计算其平均数和标准差 #include<iostream> #include<fstream> #include<cstdlib> #include<cmath>   int main() {     usingnamespace std;     ifstream fin;     ofstr

calculate the number of characters-统计文件中的字符数,非空白字符数,字母数,输入到文件和屏幕:

//calculate the number of characters-统计文件中的字符数,非空白字符数,字母数,输入到文件和屏幕: #include<iostream> #include<fstream> #include<cstdlib> #include<cmath> int main() { using namespace std; ifstream fin; ofstream fout; double ch1 = 0,ch2 = 0,letter