原创 Stack的應用——符號匹配問題

#include #include #include #include #include #define TRUE 1 #define FALSE

原创 並查集學習(3)

  並查集:(union-find sets)是一種簡單的用途廣泛的集合. 並查集是若干個不相交集合,能夠實現較快的合併和判斷元素所在集合的操作,應用很多。一般採取樹形結構來存儲並查集,並利用一個rank數組來存儲集合的深度下界,在查找操

原创 線段樹簡介

一 線段樹 在一類問題中,我們需要經常處理可以映射在一個座標軸上的一些固定線段,例如說映射在 OX 軸上的線段。由於線段是可以互相覆蓋的,有時需要動態地取線段的並,例如取得並區間的總長度,

原创 ACM(ICPC)簡介

ACM/ICPC在線題庫集錦: 網址:http://acm.uva.es/ 簡稱: uva 全稱: Valladolid Programming Contest Site 所在國:西班牙 提交方式:web

原创 貪心算法學習

  一、 貪心策略的定義   【定義1】 貪心策略是指從問題的初始狀態出發,通過若干次的貪心選擇而得出最優值(或較優解)的一種解題方法。   其實,從"貪心策略"一詞我們便可以看出,貪心策略總是做出在當前看來是最優的選擇,也就是說貪心策略

原创 量變到質變所需要的努力

摘要:  要成爲某個領域的專家,需要多長時間? 一個統計結論是10000小時。如果這個領域是本職工作,每週工作60個小時,那麼就需要160多個星期,也就是3年多。如果每天只工作8小時,那這個時間會變成5年。      然而這並不是全部,要

原创 Dynamic Programing

Dynamic programming is a confusing name for a programming technique that dramatically reduces the runtime of algorithms

原创 嵌入式開發建議

ARM+LINUX路線,主攻嵌入式Linux操作系統及其上應用軟件開發目標: ­ (1)掌握主流嵌入式微處理器的結構與原理(初步定爲arm9) (2)必須掌握一個嵌入式操作系統 (初步定爲uclinux或linux,版本待定) (3

原创 不另開空間實現兩個有序表合併

#include<stdio.h>#include<stdlib.h> typedef struct node{  int data;  struct node *next;}*Listlink; /*後插法創建單鏈表*/void las

原创 各種計算機語言的經典書籍

1、Java Java編程語言(第三版)---Java四大名著----James Gosling(Java之父) Java編程思想(第2版)----Java四大名著----Bruce Eckel Java編程思想(第3版)----Ja

原创 實現將線性表奇數和偶數分開。

 #include<stdio.h>#include<stdlib.h> typedef struct node{  int data;  struct node *next;}node; void create_list(node **

原创 樹狀數組簡介

樹狀數組是一個查詢和修改複雜度都爲log(n)的數據結構,假設數組a[1...n],那麼查詢a[1] + …… + a[i] 的時間是log級別的,而且是一個在線的數據結構,支持隨時修改某個元素的值,複雜度也爲log級別。來觀察一下這個圖

原创 PKU1001

 這道題是要我們熟悉OJ的提交和輸入輸出問題,題目雖然簡單,但是意義重大。希望好好理解。 Description Calculate a+b Input Two integer a,b (0<=a,b<=10) Output Outpu

原创 並查集學習(2)

 實現這個數據結構主要有三個函數:如下:void UFset()   //初始化{for(int i=0;i<N;i++)   parent[i]=-1;}int Find(int x)   //返回第X節點所屬集合的根結點{for(in

原创 PKU1611--The Suspects

http://acm.pku.edu.cn/JudgeOnline/problem?id=1611 Description Severe acute respiratory syndrome (SARS), an atypical p