剑指Offer(三):从尾到头打印链表
说明:
1.本系列是根据《剑指Offer》这个系列做的一个小笔记。
2.直接动力是因为师兄师姐找工作很难,而且机械出生的我面试算法更难。
3.刚开始准备刷LeetCode、LintCode,突然看见一个大神研究生正在刷这个系列,故跟着大神学习。
4.在别人基础之上进行部分优化,总结自己的观点。
问题:
输入一个链表,返回一个反序的链表。
思路:
这题太简单了,什么方法都可以!首先肯定是遍历链表,之后怎么办都可以--->>>放在数组、链表、栈、队列、vector.......都可以了
程序:
我之前都是用vector,所以这次就用stack实现一下!
#include <iostream>
#include <stack>
using namespace std;
/*
typedef struct DATA
{
int sNumb;
char sName[10];
float sMath;
}DATA;//结构体定义比较类型
*/ typedef int DATA;
struct SNode
{
DATA data;
SNode* pNext;
};
SNode* g_pHead = NULL;//第一个链表是空链表
//从头插入一个数据
void AddHead(DATA data)
{
SNode* p = new SNode;//申请一个堆空间,8字节
p->data = data;
p->pNext = g_pHead;
g_pHead = p;//把新插入的节点当做头
} int main(int argc, char*argv[])
{
stack<DATA> sta;
AddHead();
AddHead();
AddHead();
AddHead();
SNode* p = g_pHead;
cout << "元数据:";
while(p)
{
sta.push(p->data);
cout << p->data;
p = p->pNext;
}
cout << endl;
cout << "颠倒之后数据:";
while(!sta.empty())
{
cout<<sta.top();
sta.pop();
}
return ;
}

剑指Offer(三):从尾到头打印链表的更多相关文章
- 《剑指offer》从尾到头打印链表
本题来自<剑指offer> 从尾到头打印链表 题目: 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 思路: 方案一:首先遍历到尾部,然后从尾部进行到头值进行操作,后进先 ...
- 菜鸟刷题路:剑指 Offer 06. 从尾到头打印链表
剑指 Offer 06. 从尾到头打印链表 class Solution { public int[] reversePrint(ListNode head) { Stack<Integer&g ...
- 力扣 - 剑指 Offer 06. 从尾到头打印链表.md
题目 剑指 Offer 06. 从尾到头打印链表 思路1(递归) 首先先遍历整个脸表,计算出链表的长度(用于初始化数组).然后进行递归,从链表头部递归到尾部,这期间什么都不做,直到递归到最后一个节点的 ...
- 【Java】 剑指offer(5) 从尾到头打印链表
本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 输入一个链表的头结点,从尾到头反过来打印出每个结点的值.结点定义如下: ...
- Go语言实现:【剑指offer】从尾到头打印链表
该题目来源于牛客网<剑指offer>专题. 输入一个链表,按链表从尾到头的顺序返回一个ArrayList. Go语言实现: type ListNode struct { Val int ...
- [剑指Offer] 3.从尾到头打印链表
题目描述 输入一个链表,从尾到头打印链表每个节点的值. [思路]用一个vector存储,遍历链表时每次从前面插入 /** * struct ListNode { * int val; * struct ...
- [剑指offer]6.从尾到头打印链表+18.删除链表节点
链表 6.从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 方法一 迭代 创建空列表res,将链表值head.val依次存进res,返回翻转后的res 代码 cl ...
- 剑指 Offer 06. 从尾到头打印链表
链接:https://leetcode-cn.com/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/ 标签:链表 题目 输入一个链表的头节点,从尾到头 ...
- 剑指offer:从尾到头打印链表
题目 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 解题思路 在不改变链表结构的前提下,因为单向链表本身的结构是从头到尾的,现在用从尾到头遍历打印,可以联想到“先进后出”, 因此我 ...
- 剑指Offer 3. 从尾到头打印链表 (链表)
题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 题目地址 https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35 ...
随机推荐
- A* search算法
今天,还是国庆和中秋双节的时间节点,一个天气不错的日子,孩子已经早早的睡觉了,玩了一整天,也不睡觉,累的实在扛不住了,勉强洗澡结束,倒床即睡着的节奏... 不多说题外话,进入正题. 什么是A*搜索算法 ...
- ES Terms 聚合数据不确定性
Elasticsearch是一个分布式的搜索引擎,每个索引都可以有多个分片,用来将一份大索引的数据切分成多个小的物理索引,解决单个索引数据量过大导致的性能问题,另外每个shard还可以配置多个副本,来 ...
- 协程与多路io复用epool关系
linux上其实底层都基于libevent.so模块实现的,所以本质一样 gevent更关注于io和其它 epool只是遇到io就切换,而gevent其它等待也切换
- 找进程的窗口Handle
Process[] ProcessList = Process.GetProcessesByName("mspaint");//画图板 IntPtr test = ProcessL ...
- 【性能测试】使用ab做Http性能测试
[[TOC]] Http性能测试工具 ab(ApacheBench) 安装: yum install httpd 使用 ab -n 20 -c 1 192.168.35.1:8988/fortest ...
- JPanel添加键盘监听事件
因为在自己的游戏需求中谢了要用键盘控制飞机的移动,所以用到键盘监听事件,但是使用了JPanel之后添加了键盘监听事件,按相应的方向键飞机并没有反应.但是如果是为JFrame的内容面板加则会有反应. 为 ...
- 使用R语言-计算均值,方差等
R语言对于数值计算很方便,最近用到了计算方差,标准差的功能,特记录. 数据准备 height <- c(6.00, 5.92, 5.58, 5.92) 1 计算均值 mean(height) [ ...
- java1.8新特性(optional 使用)
经常在程序中出现 java.lang.NullPointerException 为了避免 报错,总是要进行一些 是否为null 的if else 判断 ,1.8 可以使用optional 类 来简 ...
- load() 方法
jQuery ajax - load() 方法 $("button").click(function(){ $("div").load('demo_ajax_l ...
- Tomcat7启动分析(三)Digester的使用(转载)
原文 http://tyrion.iteye.com/blog/1912290 前一篇文章里最后看到Bootstrap的main方法最后会调用org.apache.catalina.startup.C ...