資料結構之用佇列實現楊輝三角
/************************************************************** > File Name: PascalTriangle.c > Author: chengfeiyan > Mail: [email protected] > Created Time: 2018年08月10日 星期五 16時30分59秒 **************************************************************/ #include <stdio.h> #include "SequenceQueue.h" #include <stdlib.h> void Traverse(Queue q) { int i; for(i = q.front; i != q.rear; i++) { if (q.data[i] != 0) { printf("%d ", q.data[i]); } } printf("\n"); } int main() { int /*ret,*/ num, i, top; Queue q1, q2; if (InitQueue(&q1) != SUCCESS || InitQueue(&q2) != SUCCESS) { printf("Init Failure!\n"); exit(1); } printf("Plesae input line:\n"); scanf("%d", &num); for (i = 0; i < num; i++) { if (i == 0) { EnterQueue(&q1, 0); EnterQueue(&q1, 1); EnterQueue(&q1, 0); } else { while (LengthQueue(q1) != 1) { top = DeleteQueue(&q1); EnterQueue(&q2, top + GetFront(q1)); } while (LengthQueue(q2) != 0) { EnterQueue(&q1, DeleteQueue(&q2)); } EnterQueue(&q1, 0); } Traverse(q1); } return 0; }
相關推薦
資料結構之用佇列實現楊輝三角
/************************************************************** > File Name: PascalTriangle.c > Author: chengfeiyan > Mail:
資料結構實驗八——佇列列印楊輝三角
#include <stdio.h> #include <stdlib.h> #define M 50 typedef struct SeqQueue { int element[M]; int front; int rear
【資料結構佇列的應用】用佇列列印楊輝三角
數學中的楊輝三角大家都不陌生,那怎樣用程式的方式求n行的楊輝三角呢?方法很多,佇列就是其中的一種。下面給出基於佇列實現的楊輝三角。 # include<stdio.h> # define
資料結構之用棧實現迷宮問題(dfs)
給一個n*n的方格,讓你求從左上角到所給一點的任意一條路徑並輸出 該題用到dfs,以下是對dfs的簡要解析 :詳解請參見 傳送門 dfs是一種用於遍歷或搜尋樹或圖的演算法。 沿著樹的深度遍歷樹的節點,儘可能深的搜尋樹的分支。當節點v的所在邊都己被探尋過或者在搜尋時結點不
資料結構之——用C++實現鄰接表的DFS與BFS
首先我們要知道鄰接表的基本思想: 鄰接表儲存的基本思想:對於圖的每個頂點vi,將所有鄰接於vi的頂點鏈成一個單鏈表,稱為頂點vertex的邊表(對於有向圖則稱為出邊表),所有邊表的頭指標和儲存頂點資訊的一維陣列構成了頂點表。 在這裡我打算將一個無向圖的鄰接表的建立,以及相
資料結構之環形佇列實現(1)
注意:判空,判佇列滿, MyQueue.h #ifndef MYQUEUE_H #define MYQUEUE_H /* 環形佇列C++實現 */ class MyQueue{ publ
前端演算法:用js實現楊輝三角(帕斯卡三角形)程式設計
楊輝三角,是二項式係數在三角形中的一種幾何排列,在中國南宋數學家楊輝1261年所著的《詳解九章演算法》一書中出現。 在歐洲,帕斯卡(1623-1662)在1654年發現這一規律,所以這個表又叫做帕斯卡三角形。 帕斯卡的發現比楊輝要遲393年,比賈憲遲600年。
利用迴圈佇列實現楊輝三角的列印
#define MAXSIZE 100 #include <iostream> using namespace std; typedef int SElemType; typedef struct { SElemType *base; int front;
用 佇列 列印 楊輝三角
//用佇列列印楊輝三角//演算法:n=1 or 2 簡單輸出,n>=3-用佇列實現(把楊輝三角按行入隊,再出隊)//利用佇列 FIFO性質 #include<stdio.h>//範型 typedef int ElementType;//節點 typedef struct {ElementTy
用佇列解決楊輝三角問題
內容 相信大家都知道楊輝三角是什麼,就不過多介紹了,這篇部落格就是介紹一下,用佇列來解決楊輝三角問題,程式語言是C++,程式碼量不多,關鍵的程式碼就20行左右,思路也很簡單。 思路簡介 我們用一個迴圈,兩個佇列來計算楊輝三角,第一個佇
資料結構學習之鏈佇列c++實現楊輝三角
#ifndef LINKQUEUE_H #define LINKQUEUE_H #include <iostream> #include <assert.h> using namespace std; template <class T>
佇列實現楊輝三角形(資料結構)(C語言)
利用佇列的基本功能輸出楊輝三角形: 實現方案: #include "SequenceQueue.h" int main() { int N, num, i; Queue *que1 = NULL, *que2 = NULL, *tmp = NULL; if(Qu
資料結構之連結串列實現佇列
#include<stdio.h>#include<malloc.h>#include<stdlib.h>#define OK 1#define ERROR 0typedef struct Node{ int data; struct Node *next;}Node,*L
HFUT資料結構作業感悟與分析-----C++運用佇列解決楊輝三角
//程式碼沒有很詳細的解釋,如果不明白,請自己根據程式碼一行一行分析 //分析三到四層,即可明白其中的原理 //再有問題的話,請在下面留言 #include<iostream> using namespace std; //我自己寫的Queue,是使用鏈佇列實
【資料結構】用模版實現大小堆、實現優先順序佇列,以及堆排序
一、用模版實現大小堆 如果不用模版的話,寫大小堆,就需要分別實現兩次,但是應用模版的話問題就簡單多了,我們只需要實現兩個仿函式,Greater和Less就行了,仿函式就是用類實現一個()的過載就實現了仿函式。這個看下程式碼就能理解了。再設計引數的時候,需要把模版
java中leetcode之用Arraylist List實現楊輝三角
要用java ArrayLIsts實現下面的形式,題目是在leetcode上看到的, 1 1 1 1 2 1 1 3 3 1 具體看看用程式碼怎麼
資料結構之單鏈佇列(鏈式儲存佇列)的實現(C語言)
學習參考: 嚴蔚敏: 《資料結構-C語言版》 基本操作 入隊 出隊 建空佇列 判隊空 獲取隊首元素 獲取佇列長度 清空佇列 程式碼實現 佇列結點定義 typedef stru
資料結構之迴圈佇列(面向物件思想c++實現)
佇列是一種資料結構,它具有先進先出的特點,即FIFO(first in first out)。佇列一般有普通佇列和迴圈佇列兩種形式。我們用陣列來實現佇列,使用一般的普通佇列,當我們把隊頭元素out的時候,隊頭後的元素會逐一向前挪動,這樣就大大降低了處理效率。
資料結構與演算法(2)——各種方法實現楊輝三角
分別用二維陣列、一維陣列、遞迴等三種方法實現楊輝三角; 楊輝三角:首尾都為1,中間數值等於其肩上兩個數值之和,形如下面: 1
資料結構複習---------佇列列印楊輝三角
用佇列實現列印楊輝三角 問題介紹: 如果將二項式(a+b)^i(i=2,3,4……)展開,其係數排列成楊輝三角,如何實現各行係數的前n行打印出來,如下所示: 0 1