#3スタック、キュー、再帰関数

1304 ワード


  • ≪ナビゲート|Navigate|emdw≫:大量のデータから必要なデータを検索するプロセス.
    典型的なナビゲーションアルゴリズム:DFS、BFS

  • ≪データ構造|Data Structure|oem_src≫:データの表示、管理および処理に使用される構造
    ->スタックとキューはデータ構造の基礎概念です
    挿入(push):データを挿入します.
    削除(pop):データを削除します.

  • スタック
    :「先入後出」構造または「後入先出」
  • @例
    stack = []
    
    stack.append(5)
    stack.append(2)
    stack.append(3)
    stack.append(7)
    stack.pop()
    stack.append(1)
    stack.append(4)
    stack.pop()
    
    print(stack) #최하단 원소부터 출력
    print(stack[::-1]) # 최상단 원소부터 출력
    append()として挿入、pop()として削除
    削除すると、一番遅く入力した数字が最初に削除されます.
  • キュー
    :第1入出力(First In First Out)構造
  • @例
    from collections import deque
    
    queue = deque()
    
    queue.append(5)
    queue.append(2)
    queue.append(3)
    queue.append(7)
    queue.popleft()
    queue.append(1)
    queue.append(4)
    queue.popleft()
    
    
    print(list(queue))
    Collectionsモジュールが提供するDequeデータ構造を使用してPythonキューを実現
    リストはlist(queue)とすることができます.
  • 再帰関数
    :独自の関数を再呼び出し
  • @例
    def recursive_function() :
    	print("재귀함수를 호출합니다.")
        recursive_function()
    recursive_function()    
    def fac(n) :
        if n<=1 :
            return 1
        return n*fac(n-1)
        
    print(fac(5))
    プロビジョニングによる工場化
    return nfac(n-1)はn!=n(n-1)