原创 c++多態最清晰的解釋

先佔個位置,稍微寫點,這兩天忙完了寫代碼版: 關於虛函數與多態,一般是用微軟的解釋:基類指針或引用指向派生類對象時,如果調用虛函數,則調用派生類虛函數。 我看倒不如這樣來解釋:另寫一個函數,如  func (A&a) {}  其中一個參數

原创 poj3061-subsequence

二分法時間複雜度O(nlogn)尺取法時間複雜度O(n)#include <iostream> #include <algorithm> using namespace std; #define N 100010 int arr[N+1

原创 Coffee and Coursework

這個問題我一開始沒做出來,參考了https://blog.csdn.net/a1097304791/article/details/87874948#t3 和 https://www.cnblogs.com/albert67/p/1041

原创 動態規劃與子序列和子串的整理

整理一下動態規劃與子串子序列相關的內容: 花了一天時間,重新做了一遍,感覺手很生,有些地方調試了很久纔好,唉。 最長公共子序列: 帶路徑輸出的最長公共子序列: 最長公共子串: 最長上升子序列: 最長上升子串: 最長迴文子序列:

原创 二分搜索的使用技巧

1.搜索第一個等於key或第一個大於key的值 比如1 ,2,3,3,3,4中,若key爲3,則取第一個3 int binarySearch1(int arr[], int left, int right, int key) //

原创 取模和快速冪

有時需要計算一個特別大的數,結果是取模的,但是中間過程可能超出long long等上限,因此可以根據計算過程中可以進行取模的性質,採用快速冪運算來計算 (ab) mod M=(a mod M)(b mod M) mod M;

原创 前端學習-html部分

記錄一下前端的學習,貼一下代碼和效果截圖: 第一部分:簡單文本 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="vi

原创 Redis系列從入門到精通 大合集

本文日常更新,遲早會寫完它 (1) Redis基礎 (1.1) Redis入門 Redis要解決的問題: 關係型數據庫的毛病: 性能瓶頸:磁盤io性能低下 擴展瓶頸:數據關係複雜,擴展性差,不便於大規模集羣 解決思路: 降低

原创 最長公共子序列 記錄最長路徑 輸出序列

一次筆試題中用到了這個,可惜沒想出來,特意搜了一下,這個答主給出的代碼簡潔易懂。 對代碼的時間複雜度稍微優化了一下 轉載自 :https://blog.csdn.net/qq_38984851/article/details/811925

原创 2019華爲初始筆試第二題

唉,當時腦子不清楚,第二題bug沒解決,結束後又搞了十幾分鍾,發現substr參數錯了,有個地方&&寫成了||。。。 思路:這題可以用遞歸求,因爲每個括號都可以遞歸,設函數func爲求解函數, 那麼func( abc(3(a)b)) --

原创 從KMP、字典樹到AC自動機,字符串的奮鬥歷程

先貼幾個板子,記錄一下 kmp爲單模匹配算法,這個博客講的很好:https://www.cnblogs.com/ZuoAndFutureGirl/p/9028287.html,透徹明瞭,其中next數組即爲當前字符前已匹配的字符中最長的相

原创 poj2503 Babelfish (hashmap)

題目鏈接:http://poj.org/problem?id=2503 該題用hashmap可以解決,我從中學到了以下幾點: 1. 鏈表插入可以倒着來,省去搜索到鏈表末尾再進行插入的時間,代碼如下 p->next = link[e];

原创 poj1002 487-3279

Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 315192   Accepted: 56155 Description 企業喜歡用容易被記住的電話號碼。讓電話號碼

原创 c++多態

先佔個位置,稍微寫點,這兩天忙完了寫代碼版: 關於虛函數與多態,一般是用微軟的解釋:基類指針或引用指向派生類對象時,如果調用虛函數,則調用派生類虛函數。 我看倒不如這樣來解釋:另寫一個函數,如  func (A&a) {}  其中一個參數

原创 CodeForces - 1118E Yet Another Ball Problem

題目鏈接:https://codeforces.com/contest/1118/problem/E 這題能想到按照(1,2)(2,1)(1,3)(3,1)的方法來排列就解決了 要注意的是N和K要開long long類型的,因爲下面代碼中