Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >获取链表中的上一个值

获取链表中的上一个值
EN

Stack Overflow用户
提问于 2014-03-03 00:09:36
回答 1查看 814关注 0票数 0

我有一个链表,它接受用户输入的令牌的值,并将它们存储在列表中。我希望能够访问之前存储的值。

例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (tok = "add") 
{
//Get the previous 2 stored elements in the linked list and add them
}

到目前为止,我的代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        #include <stdio.h>
    #include <conio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <stdbool.h>
    #include <ctype.h>



    struct node {
        char *val;
        struct node *next;
        };

    struct node *head = NULL;
    struct node *cur = NULL;

    struct node* create_list (char *value) {
        struct node *ptr = (struct node*) malloc(sizeof (struct node));
        if (NULL == ptr) return NULL;
        ptr->val = value;
        ptr->next = NULL;

        ptr->next = head;
        head = ptr;

        return ptr;
        };

    struct node* insertion (char *value) {
        if (NULL == head)
            return (create_list(value));

        struct node *ptr = (struct node*)malloc(sizeof(struct node));
        ptr->val = value;
        ptr->next = NULL;

        ptr->next = head;
        head = ptr;

    return ptr;

    };

void print_list(void)
{
    struct node *ptr = head;

    while(ptr != NULL)
    {
        printf(" %s\n",ptr->val);
        ptr = ptr->next;
    }

    return;
}


void destroy_list(void)
{
  struct node *ptr = head;
  struct node *tmp = NULL;

  while(ptr != NULL) {
    free(ptr->val);
    tmp = ptr;
    ptr = ptr->next;
    free(tmp);
  }
}

struct exp
{
    int type;
    union
    {
        char strq[50];
        } myvalue;
    };


    int main(int argc, char *argv[])  {

        struct exp in;


        while(1)
        {
            printf("repl>");
            char *storage [30];
            char* tok;
            char g;
            char buffer[20];
            int pos = 0, i;
            fgets(buffer,sizeof(buffer),stdin);

            tok = strtok(buffer," ");

            while (tok)
        {
                pos++;
                if(pos >= 30)
                {
                    goto _exit_left;
                }
                        storage[pos] = strdup(tok);

                        strcpy(in.myvalue.strq, tok);
                        if(isdigit(in.myvalue.strq))
                        {
                            create_list (strdup(in.myvalue.strq));
                        }
                        create_list(strdup(in.myvalue.strq));


                tok = strtok(NULL," ");
        }
        print_list();
        }
        _exit_left:
            destroy_list();
    }
EN

回答 1

Stack Overflow用户

发布于 2014-03-03 00:12:23

使用带有2个指针的链表。一个指向代码中已有的下一个节点,另一个指针指向上一个节点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22135506

复制
相关文章
获取listbox中的值
List<string> list=new List<string>();             for (int i = 0; i < lbLog.Items.Count - 1; i++)             {                 list.Add(lbLog.Items[i].ToString());             }
2018/09/03
6.2K0
SQL 获取上一个订单的状态
现在要做的是在 t_order 表中增加一列 last_id,用于展示上一个状态为“成功”的订单的 id,若找不到符合条件的订单,则 last_id 为 NULL。
白日梦想家
2020/08/27
1.3K0
获取GridView中的某列值
    protected void GridView1_RowEditing(object sen
Java架构师必看
2021/03/22
10.2K0
封装获取URL中params的值
utils const str = "http:www.baidu.com?name=swt&age=80&heigth=200" function get(key) { //获取?位置的索引
peng_tianyu
2022/12/15
3K0
jquery获取紧邻的上一个元素
本章节分享一段代码实例,它实现了获取紧邻的上一个同级元素的功能。 代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.pipipi.net/" /> <title>犀牛前端部落</title> <style type="text/css"> #box li { width: 350px; height: 25px; line-height: 25
IT工作者
2021/12/28
1.3K0
Thymeleaf 获取model中的值和JS获取Model中的数据
1:Thymeleaf 获取model中的值 访问model中的数据 //通过“${}”访问model中的属性
王小婷
2021/06/21
24.3K0
Thymeleaf 获取model中的值和JS获取Model中的数据
js获取数组中的最大值最小值
遍历方法: var tmp = [1,12,8,5]; var max = tmp[0]; for(var i=1;i<tmp.length;i++){ if(max<tmp[i])max=tmp[i]; } console.log(max); 使用apply方法: var a = [1,2,3,5]; console.log(Math.max.apply(null, a));//最大值 console.log(Math.min.apply(null, a));//最小值 多维数组可以这
deepcc
2018/05/16
36.4K0
通过jQuery获取页面中radio选中的值
<tr> <td class="tdtext" colspan="3">2、廉洁自律,不利用岗位职权方便谋取私利。</td> <td class="trss"><input name="radio17" type="radio" value="5" required/></td> <td class="trss"><input name="radio17" type="radio" value="4" /></td> <td class="trss"><input name=
SingYi
2022/07/13
5.6K0
通过jQuery获取页面中radio选中的值
Map中获取key-value值的方法
Map集合是一种键值映射形式的集合。当调用put(Kkey,V value)方法把数据存到Map中后,那么如何把Map中的key值和value值取出来呢?都有哪几种取值的方法呢?下边就来一介绍一下。
Breeze.
2022/04/23
9.8K0
Map中获取key-value值的方法
Python获取上一个月的天数
[Python]代码     #简单小程序 from datetime import datetime import calendar def getMonths(): d = datetime.now() c = calendar.Calendar() year = d.year month = d.month if month == 1 : month = 12 year -= 1 else : mon
代码伴一生
2021/11/01
1K0
获取HTML网页中option标签元素的值
在进行表单元素的操作时,难免会遇到对option元素的挑选,下面的示例代码能够很好的获取到你option元素选择的值,如果要传递给后端,可通过ajax或者其他方式传递即可。 示例代码
呆呆
2021/10/09
7.5K0
获取map对象中的最大最小值
遇到的问题是获取map中的最高成绩和最低成绩 xxx.entrySet() 这里放的你的map
崔笑颜
2020/06/08
5.8K0
pythonic实践之获取dict中的元素值
但是大部分情况下,在真实的环境中,这个key有可能不存在。 如果使用下标的方法,那么需要捕捉KeyError错误或者先用if判断key是否存在。这样代码写起来非常的ugly。
有福
2018/08/28
2.8K0
Python获取上一个月的天数
[Python]代码     #简单小程序 from datetime import datetime import calendar def getMonths(): d = datetime.now() c = calendar.Calendar() year = d.year month = d.month if month == 1 : month = 12 year -= 1 else : mon
艳艳代码杂货店
2021/11/01
1.4K0
链表----链表中元素的获取、查询和修改
本节是在上一小节的基础上继续完善我们的链表相关方法的编写,在本节中我们着重对如何获取链表中元素、查询元素以及修改元素进行学习。
wfaceboss
2019/04/08
1.2K0
链表----链表中元素的获取、查询和修改
在单链表中删除值相同的多余节点的算法
思路:分别使用两个指针p和q, 因为可能q->val==p->val时,此时要删除q所指向的节点,所以需要一个s指针记录q,防止发生断链。
lexingsen
2022/02/24
2.5K0
VBA中的高级筛选技巧:获取唯一值
在处理大型数据集时,很可能需要查找并获取唯一值,特别是唯一字符串。例如,在一个有100000条记录的数据集中,其中可能包含数百个唯一字符串,如果将这些唯一记录提取出来,那么数据清理会变得更容易。
fanjy
2022/03/04
8.6K0
VBA中的高级筛选技巧:获取唯一值
js获取request中的值_set协议工作原理
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/09/30
7.3K0
Javascript获取数组中的最大值和最小值的方法汇总
比较数组中数值的大小是比较常见的操作,下面同本文给大家分享四种放哪广发获取数组中最大值和最小值,对此感兴趣的朋友一起学习吧 比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,下面来介绍如下几种方法,代码如下: 方法一: //最小值 Array.prototype.min = function() { var min = this[0]; var len = this.length; for (var i = 1; i < len; i++){ if (this
前朝楚水
2018/04/02
7.5K0
点击加载更多

相似问题

MIPS:获取链表中节点的值

11

用循环获取链表的值

12

从链表中获取最小值?

20

Pcointing到链表的上一个节点

110

正在尝试指向链表中的上一个节点

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文