这道题的思路还是比较清晰的,用栈嘛,麻烦是麻烦在这些层次的细节上。主要有下面几个:
./和/:当前路径,遇到这种,应该将后面的文件夹或文件入栈。
../:上一层路径,遇到这种,应该做一次出栈操作,相当于返回了上一层目录。
//:可以直接简化成‘/’。
还有下面几个要注意的测试用例:
1. linux的路径名可以含有很多特殊字符,比如“_”,".","*"等等,所以要特别注意含有"."的哪...
分类:
其他好文 时间:
2014-05-13 23:32:13
阅读次数:
347
栈(操作系统):由编译器自动分配释放
,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈栈使用的是一级缓存, 他们通常都是被调用时处于存储空间中,调用完毕立即释放堆(操作系统):
一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。堆则是存放在二...
分类:
其他好文 时间:
2014-05-10 05:27:11
阅读次数:
294
一、最基本的工作1、准备RAM
如果是SRAM这步可以省略,但如果是SDRAM就需要配置一下时序才能使用。RAM是必须准备的,没有RAM将来的全局变量和堆栈在哪儿开辟。2、准备SP
SP肯定是设置在RAM中。SP必须设置好,不然程序怎么跳转到C函数运行--需要入栈操作。3、准备代码 对于处理器...
分类:
其他好文 时间:
2014-05-10 02:59:42
阅读次数:
238
转载请注明出处: 题目:用两个队列模拟一个栈,即用两个队列的出队和入队操作,来实现栈的出栈和入栈操作。 思路:稍微画下草图,便不难想出该题的解决方法,思路如下: 假设有两个队列Q1和Q2,当二者都为空时,入栈操作可以用入队操作来模拟,可以随便选一个空队列,假设选Q1进行入栈操作,现在假设a,b,c依次入栈了(即依次进入队列Q1),这时如果想模拟出栈操作,则需要将c出栈,因为在栈顶...
分类:
其他好文 时间:
2014-05-07 06:54:12
阅读次数:
466
栈的Java实现--链栈
链栈的基本结构:
链栈的入栈操作:
让top引用指向新的节点,新节点的next指向原来的top
记录栈内元素个数的size+1
链栈的出栈操作:
top引用指向原栈顶元素的下一个元素(top.next),并...
分类:
编程语言 时间:
2014-05-06 23:08:17
阅读次数:
365