大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 堆棧的作用和用途

堆棧的作用和用途

更新時間:2021-08-23 12:09:56 來源:動力節點 瀏覽1770次

1.內存區域

一個由C/C++編譯的程序占用的內存分為以下幾個部分

(1)棧區(stack)— 由編譯器自動分配釋放 ,存放函數的參數值,局部變量的值等。其操作方式類似于數據結構中的棧。

(2)堆區(heap) — 一般由程序員分配釋放, 若程序員不釋放,程序結束時可能由OS回收 。注意它與數據結構中的堆是兩回事,分配方式倒是類似于鏈表。

(3)全局區(靜態區)(static)— 全局變量和靜態變量的存儲是放在一塊的,初始化的全局變量和靜態變量在一塊區域, 未初始化的全局變量和未初始化的靜態變量在相鄰的另一塊區域。程序結束后由系統釋放。

(4)文字常量區 — 常量字符串就是放在這里的,程序結束后由系統釋放 。

(5)程序代碼區 — 存放函數體的二進制代碼。

2.隊列

堆棧應用非常廣的棧LIFO(后進先出)

(1)洗盤子。用過的盤子一個一個疊放,那么最上面的盤子先洗,然后是下面的。

(2)遞歸函數返回地址。程序先執行的函數地址扔到最底下,直到遞送到有明確返回值函數地址后,在歸回上一層處理它,直到最底部函數都處理完。

在JAVA中有兩種形式體現

(1)自己編寫實例代碼:(主要操作方法為:push()、pop())

這段代碼就是首先定義一個stack堆棧類,堆棧類里有個存放值的數組,有個指針tos(姑且看過做指針)

當我們push的時候,stck[]數組每加一個值,tos就加1相當于指針在移動,同理當我們pop的時候,指針-1也是在移動

class Stack{
 int stck[] = new int[10];
 int tos; 
 Stack(){
  tos = -1;
 } 
 void push(int item){
  if(tos == 9)
   System.out.println("Stack is full.");
  else
   stck[++tos] = item;
 } 
 int pop(){
  if(tos < 0){
   System.out.println("Stack underflow.");
   return 0;
  }else{
   return stck[tos--];
  } 
 }
} 
public class TestStack{
 public static void main(String args[]){
  Stack mystack1 = new Stack();//new 兩個mystack對象
  Stack mystack2 = new Stack(); 
  for (int i = 0;i<10 ;i++ )
  {mystack1.push(i);}//循環0,9 將 0到9按順序插入到mystack1中的數組stck中 (此處++tos后才加 開始tos=-1 ++后就是0)
  for(int i =10;i<20;i++)
  {mystack2.push(i);}//循環10,19 將 10到19按順序插入到mystack1中的數組stck中 
  System.out.println("Stack in mystack1:");//打印此語句
  for(int i = 0;i<10;i++)
   System.out.println(mystack1.pop());//循環9,0打印stck中值 依次是stck[9],stck[8]...stck[0] 
  System.out.println("Stack in mystack2:");
  for(int i = 10;i<20;i++)
   System.out.println(mystack2.pop());//循環19,10打印stck中值 依次是stck[19],stck[18]...stck[10]  
 }
}

(2)使用系統提供好的Queue類

使用boolean add(E e)添加對象

使用 E poll() 獲取并移除此隊列的頭

以上就是動力節點小編介紹的"堆棧的作用和用途",希望對大家有幫助,想了解更多可查看Java堆棧。動力節點在線學習教程,針對沒有任何Java基礎的讀者學習,讓你從入門到精通,主要介紹了一些Java基礎的核心知識,讓同學們更好更方便的學習和了解Java編程,感興趣的同學可以關注一下。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 天天干天天拍天天操 | 在线视频综合网 | 亚洲欧美高清视频 | 成人国产在线24小时播放视频 | 欧美日韩高清在线观看一区二区 | 国产成人拍精品视频网 | 日日免费视频 | 一级毛片日本特黄97人人 | 日本精品高清一区二区2021 | 久草在线视频在线观看 | 毛片网页 | 国产精品伦理一二三区伦理 | 久久这里有精品视频任我鲁 | 国产成人高清在线观看播放 | 97国产成人精品视频 | 99视频精品在线 | 四虎精品影院2022 | 一一级毛片| 久久国产精品99久久久久久老狼 | 欧美激情精品久久久久久大尺度 | 黄毛片网站 | 日本成人毛片 | 四虎b7s22c0m| 国产精品9999久久久久仙踪林 | 午夜精品久久久久久久99热浪潮 | 久久一区二区三区精品 | 四虎www成人影院免费观看 | 嘿咻成人免费视频欧美激情 | 亚洲欧美日韩中文字幕在线 | 九九99久久精品在免费线bt | 狠狠色狠狠干 | 四虎国产精品免费视 | 超级碰碰青草久热国产 | 九九性视频 | 欧美开嫩苞实拍视频在线观看 | 真人一级一级特黄高清毛片 | 免费网站日本永久免费观看 | 色综合图 | 香蕉久久综合精品首页 | 毛片免费观看网址 | 欧美日韩综合在线视频免费看 |