原创 統計一個字符串中是否有同樣的字符(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) {