剑指offer--2
前言:继续笔记分享!
面试题6:暂无好的解决方法先搁浅一下
面试题7:

#include<stdio.h>
#include<stdlib.h> typedef struct LIFO{
int *data;
int maxlen;
int top;
}seqstack_t;
typedef struct LIFO1{
int *data;
int maxlen;
int top;
}seqstack_t1; //创建一个空栈
seqstack_t *CreateStack(int max)
{
seqstack_t *H;
H = (seqstack_t *)malloc(sizeof(seqstack_t));
H->data = (int *)malloc(sizeof(int)*max);
H->maxlen = max;
H->top = ;
return H;
}
//创建一个空栈
seqstack_t1 *CreateStack1(int max)
{
seqstack_t1 *H;
H = (seqstack_t1 *)malloc(sizeof(seqstack_t1)); H->data = (int *)malloc(sizeof(int)*max);
H->maxlen = max;
H->top = ;
return H;
} //获取栈顶数据的值
int GetTop(seqstack_t1 *H)
{
if(H->top <= )
{
printf("栈空\n");
return -;
}
return H->data[H->top-];
} //栈清空
void Clear(seqstack_t *H)
{
H->top=;
} //向栈中插入数据
void Push(seqstack_t *H,int m)
{
H->data[H->top]=m;
H->top++;
}
//向栈中插入数据
void Push1(seqstack_t1 *H,int m)
{
H->data[H->top]=m;
H->top++;
} int Pop(seqstack_t *H)
{
return H->data[H->top];
} int main()
{
seqstack_t *T=CreateStack();
seqstack_t1 *T1=CreateStack1();
Push(T,);
Push(T,);
Push(T,); int i=;
--T->top;
while(T->top >= )
{
Push1(T1,Pop(T));
i++;
--T->top;
}
while(T1->top > )
{
printf("data:%-5d",GetTop(T1));
--T1->top;
}
printf("\n"); free(T->data);
free(T);
free(T1->data);
free(T1);
return ;
}
注:主要要懂栈后进先出LIFO,队列先进先出FIFO,一个栈弹出,一个压入,就可以实现队列!!!
剑指offer--2的更多相关文章
- 剑指Offer面试题:1.实现Singleton模式
说来惭愧,自己在毕业之前就该好好看看<剑指Offer>这本书的,但是各种原因就是没看,也因此错过了很多机会,后悔莫及.但是后悔是没用的,现在趁还有余力,把这本书好好看一遍,并通过C#通通实 ...
- 剑指Offer面试题:14.链表的倒数第k个节点
PS:这是一道出境率极高的题目,记得去年参加校园招聘时我看到了3次,但是每次写的都不完善. 一.题目:链表的倒数第k个节点 题目:输入一个链表,输出该链表中倒数第k个结点.为了符合大多数人的习惯,本题 ...
- 《剑指offer》面试题12:打印1到最大的n位数
面试题12:打印1到最大的n位数 剑指offer题目12,题目如下 输入数字n,按顺序打印出1到最大的n位十进制数,比如输入3,则打印出1,2,3一直到最大的三位数999 方法一 和面试题11< ...
- 《剑指offer》面试题11: 数值的整数次方
面试题11: 数值的整数次方 剑指offer面试题11,题目如下 实现函数double power(double base,int exponent),求base的exponent次方, 不得使用库 ...
- 剑指 Offer 题目汇总索引
剑指 Offer 总目录:(共50道大题) 1. 赋值运算符函数(或应说复制拷贝函数问题) 2. 实现 Singleton 模式 (C#) 3.二维数组中的查找 4.替换空格 ...
- 面试题目——《剑指Offer》
1.把一个字符串转换成整数——<剑指Offer>P29 2.求链表中的倒数第k个结点——<剑指Offer>P30 3.实现Singleton模式——<剑指Offer> ...
- 剑指offer习题集2
1.把数组排成最小的数 class Solution { public: static bool compare(const string& s1, const string& s2) ...
- 剑指offer习题集1
1.打印二叉树 程序很简单,但是其中犯了一个小错误,死活找不到,写代码要注意啊 这里左右子树,要注意是node->left,结果写成root->left vector<int> ...
- 剑指Offer:面试题20——顺时针打印矩阵(java实现)
题目描述: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数 字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1, ...
- 牛客网上的剑指offer题目
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 题目:请实现一个函数,将一 ...
随机推荐
- 创建Gitblit本地服务器(For windows )01
1.先下载gitblit 貌似需要FQ,百度云链接https://pan.baidu.com/s/1WUtBswj5TkFFcd_hiFFCcw,提取码: xr9n .因为gitblit是基于jav ...
- e.stopPropagation()兼容性处理
使用jquery库,e.stopPropagation()兼容所有. 原生的就要这么写 function stopPropagation(e){ e=window.event||e; if(docum ...
- 20175316盛茂淞 2018-2019-2 《Java程序设计》第7周学习总结
20175316盛茂淞 2018-2019-2 <Java程序设计>第7周学习总结 教材学习内容总结 第八章 常用实用类 一.String类 String类在java.lang包中,jav ...
- python编程之变量和简单的数据结构
一.变量 前面我们用python输出了“hello world!” 这次我们在前面加入一行,定义一个变量,然后修改第二行. 添加变量导致Python解释器需要做更多工作.处理第1行代码时,它将文本“H ...
- windows 多网卡路由设置
1.问题 windows操作系统,双网卡连接内外网,配置路由使内网请求走内网网卡,外网请求走外网网卡 2.网络参数 内网网卡 IP:172.22.25.152 mask: 255.255.255.0 ...
- Educational Codeforces Round 58 (Rated for Div. 2) D 树形dp + 数学
https://codeforces.com/contest/1101/problem/D 题意 一颗n个点的树,找出一条gcd>1的最长链,输出长度 题解 容易想到从自底向长转移 因为只需要g ...
- C#反编译笔记
碰到下面这种 public class DstBoneName : Enum { public int value__; ; } 还原为 public enum DstBoneName { cf_J_ ...
- HTTP协议 与 TCP协议 的区别
TCP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据. TCP/IP和HTTP协议的关系,从本质上来说,二者没有可比性,我们在传输数据时,可以只使用(传输 ...
- java日志系统中的 NDC
NDC https://www.cnblogs.com/smile361/p/3853404.html
- Exp2 后门原理与实践 20154320 李超
目录- 基础问题回答- 基础知识- 实验过程- 实验心得体会 基础知识问答 1. 例举你能想到的一个后门进入到你系统中的可能方式?从不安全的网站上下载的程序可能存在后门. 2. 例举你知道的后门如何启 ...