海绵爱上星 发表于 2018-8-22 20:25:10

C

请问借口是什么?比如队列的接口?
这些接口有什么意义?

claws0n 发表于 2018-8-22 20:32:52

资料的出入口。队列就是要排队的,先进先出,所以有两个接口,一个进,一个出

到栈的时候,是一个接口而已 --> 先进后出

海绵爱上星 发表于 2018-8-22 20:37:30

claws0n 发表于 2018-8-22 20:32
资料的出入口。队列就是要排队的,先进先出,所以有两个接口,一个进,一个出

到栈的时候,是一个接口而 ...

从那个地址里出来吗?

claws0n 发表于 2018-8-22 20:43:36

海绵爱上星 发表于 2018-8-22 20:37
从那个地址里出来吗?

??明确的地址不重要,因为是链式存储结构
不是有一个头结点吗?数据从那里出来
有一个尾结点,数据从那里进入队列

海绵爱上星 发表于 2018-8-23 01:03:39

claws0n 发表于 2018-8-22 20:43
??明确的地址不重要,因为是链式存储结构
不是有一个头结点吗?数据从那里出来
有一个尾结点,数据从 ...

接口是不是就是一个函数啊?。。。{:5_94:}

claws0n 发表于 2018-8-23 01:42:52

海绵爱上星 发表于 2018-8-23 01:03
接口是不是就是一个函数啊?。。。

你现在看【数据结构与算法】不是吗?帮你转过去~

不全然是/不是……首先,队列是透过结构定义的
                                                                                                      尾结点
[头结点|]--->--->--->--->--->
   接口                                                                                             接口
(输出端)                                                                                    (输入端)

至于怎么实现数据的【插入】与【取出】,当然是透过函数,但函数只是实现这个操作的方法或手段而已。接口,其实就是【输入端/输出端】的别名。就好像【服务柜台】也称【窗口】

海绵爱上星 发表于 2018-8-23 15:52:15

claws0n 发表于 2018-8-23 01:42
你现在看【数据结构与算法】不是吗?帮你转过去~

不全然是/不是……首先,队列是透过结构定义的


这个接口是谁才有的。。。队列,数组这些才有接口???{:5_94:}

claws0n 发表于 2018-8-23 16:06:13

海绵爱上星 发表于 2018-8-23 15:52
这个接口是谁才有的。。。队列,数组这些才有接口???

亲,您是在哪里看到的?有些 C 的书会讲,但是小甲鱼老师的《带你学 C 带你飞》里没有,在《数据结构与算法》才会介绍,可以到哪里去了解更多

数组严格来说没有接口,因为它的接口太多,你可以直接找到数组的位置,并对取值或修改
队列与栈的接口就更有意义了,因为它们的接口是被封装即限制的。队列只有两个接口,而栈只有一个接口。
比如说到邮局或一些服务单位去,我们只能跟柜台接洽。

队列与栈是结构体。不是所有的结构体都有,而是要在结构体内部去设计。

海绵爱上星 发表于 2018-8-23 16:26:28

claws0n 发表于 2018-8-23 16:06
亲,您是在哪里看到的?有些 C 的书会讲,但是小甲鱼老师的《带你学 C 带你飞》里没有,在《数据结构与算 ...

可以这样理解吗,,我要对某个栈或者队列进行更新,那么所谓的接口就是栈的最外面的那一个位置(或者是数据)??

claws0n 发表于 2018-8-23 16:53:30

海绵爱上星 发表于 2018-8-23 16:26
可以这样理解吗,,我要对某个栈或者队列进行更新,那么所谓的接口就是栈的最外面的那一个位置(或者是数 ...

可以这样理解吗,我要对某个栈或者队列进行更新,这样去理解是有问题的

那么所谓的接口就是栈的最外面的那一个位置(或者是数据)?? {:5_106:}

【栈】与【队列】的设计是用于暂存资料的。因此没有所谓的更新。当然可以说更新是把新的资料给放进栈或队列当中,但是在执行程序的时候,会把它给清空
比如说有一个数要头尾对调 1234-->4321
可以放到栈(先进后出)中1234>> 234 >> 34 >> 4>> [空]
    放到栈中的数据(压栈):[空] >> 1>> 21>> 321 >> 4321
    释放栈中的数据(出栈):4321>> 321>> 21>> 1 >> [空]
            显示数据(出栈): [空] >> 4>> 43>> 432>> 4321
页: [1]
查看完整版本: C