原创 統計一個字符串中是否有同樣的字符(bitset)

using namespace std; int main() { bitset<256>b; string a; int i; while(cin>>a) { for(i=0;i

原创 方程根的三種近似求法(同濟高數P177)

求方程x*x*x+1.1*x*x+0.9*x-1.4=0的近似根 一、二分法 using namespace std; double f(double x) { double k=x*x*x+1.1*x*x+0.9*x-1.4;

原创 基數排序

#include<iostream> #include<algorithm> #include<cstdlib> #include<bitset> #include<stack> #include<queue> #include<cst

原创 STL複習補充

1、關於vector的resize與reverse resize(m) 若m<vector容量,則將size變爲m,容器元素及capacity不變;否則,不但size變爲m,capacity也將改變,大小不一定,但大於等於size,在原有

原创 關於定義vector參數問題

不可以vector<int,string>v; 必須vector<pair<int,string> >v; 放入時必須:v.push_back(make_pair(123,"123")); 若有 struct f{ int a;strin

原创 關於輸入/出流迭代器

int main() { istream_iterator<int>os(cin); //會等待輸入數據 istream_iterator<int>end1; while(1) { cout<<

原创 重載提取和插入運算符

struct A { int a; int b; }; istream& operator>>(istream&in,A&k) { return in>>k.a>>k.b; } ostream& operator

原创 關於引用

int f(int a) { return a; } int&f1(int &a1) { return a1; } int b=1; int main() { int c; c=f(b); co

原创 關於優先級隊列定義時的問題

優先級隊列定義時,若採用自定義類型(例如:結構體類型),則必須在該結構體中重載<運算符,否則會編譯器報錯

原创 關於數組默認值的問題

1、全局int型數組若不對其初始化,默認值全爲0 2、堆上的數組若不對其初始化,默認值是隨機的(原來是什麼還是什麼) 3、vector<int>v(5); 無論v在全局還是局部,5個值都爲0 

原创 關於內部類注意點

1、C++類中還可以再定義內部類 2、在內部類定義之前,如果外部類中的成員函數要使用內部類,則應在使用前聲明內部類(外部類體的開頭聲明) 3、外部類的成員函數和成員變量在內部類中不可使用

原创 關於靜態代碼塊、非靜態代碼塊、構造函數、普通成員函數的調用順序

import java.util.Scanner; public class HelloJava { static String name; static { System.out.println(name + "靜態代碼塊")

原创 判斷是否是迴文鏈表(快慢指針+棧)

bool is_palin(Node*h) { Node*quick,*slow,*p,*n; stack<int>s; if(h==NULL || h->next==NULL)return false;

原创 全排列問題

1、n個數的全排列 123的全排列:123 132 213 231 312 321 可以發現1 2 3三個數輪流出現在第一個位置,只需將每個數與第一個數交換位置,剩下的n-1個數再做全排列即可 void f(int a[],int p,

原创 "之"字行打印(利用宏觀框架)

  void m_prinf(int a[][10],int ar,int ac,int br,int bc,bool dir) { if(dir) { while(ac!=bc+1) {