Google資料分析課程筆記-2
Course 2 - Ask Questions to Make Data-Driven Decisions
簡介
This is the second course in the Google Data Analytics Certificate. You’ll build on your understanding of the topics that were introduced in the first course of this certificate program. The material will help you learn how to ask effective questions, make data-driven decisions, and meet stakeholders’ needs.
章節大綱
Ask effective questions
在這個單元內學習如何進行有效的提問,良好的提問可以讓整個分析的流程變得更加順利。
Make data-driven decisions
本單元介紹數據如何去驅動的各種業務方面的決策,並且學習如何透過報告和 ...
Google資料分析課程筆記-1
Course 1 - Foundations: Data, Data, Everywhere
簡介
This is the first course in the Google Data Analytics Certificate. Organizations of all kinds need data analysts to help them improve their processes, identify opportunities and trends, launch new products, and make thoughtful decisions. In this course, you’ll be introduced to the world of data analytics through hands-on curriculum developed by Google. The material shared covers plenty of key data analytics.
章節大綱
Introducing data analytics and a ...
演算法筆記-二分搜尋
二分搜尋是一個比循序搜尋還要有效率的常用搜尋方式,主要邏輯為反覆將搜尋範圍減半直到找到目標為止,但是除了最基本的寫法之外還有另外兩種寫法,也有很多小細節是需要注意的。
一點小細節
循環 & 終止條件
left <= right
當循環條件為 left <= right 時,代表會在 left == right + 1 時結束,此時區間為空,代表可以直接回傳 -1 ,target 不在陣列之中。
12345678910111213class Solution {public: int search(vector<int>& nums, int target) { int left = 0, right = nums.size() - 1; while(left <= right){ int mid = (left + right) / 2; if(nums[mid] == target) return mid; ...
演算法筆記-雙指針
雙指針是在陣列處理時可以利用的技巧,利用兩個指針去做判斷或是構造出窗口幫助解題,根據兩個指針的特性可以分為對撞指針、快慢指針以及滑動窗口。
對撞指針
兩個指針在數列兩端,移動方向相反,向中間移動,通常終止條件為兩指針對撞 or 滿足題目需求,兩邊指針的移動條件則要視題目需求做判斷。
LeetCode 167. Two Sum II - Input Array Is Sorted
Given a 1-indexed array of integers numbers that is already sorted in non-decreasing order, find two numbers such that they add up to a specific target number. Let these two numbers be numbers[index1] and numbers[index2] where 1 <= index1 < index2 <= numbers.length.
Return the indices of the two num ...
演算法筆記-3
三維迷宮問題
給定一個三維的迷宮,起點標示為 S ,終點標示為 E ,# 代表牆壁,. 表示道路,每次移動所需時間相同,計算出從起點到終點的最短時間。
其實就是二維迷宮的推廣而已,可以同樣用 DFS 解決,此時每次可前進的方向會有 6 個,分別為前、後、上、下、左、右,而判斷邊界時也要注意 x, y, z 都要判斷。因為題目必須判斷最短時間,因此要多加一個變數 dis 來儲存當前的最短步數。
部分程式碼:
12345678910111213141516171819202122232425//6個方向int dir[6][3] = {{1, 0, 0},{-1, 0, 0},{0, 1, 0},{0, -1, 0},{0, 0, 1},{0, 0, -1}},dis = 30000; //判斷邊界函數bool check(int a, int b, int c, int z, int y, int x){ return (0 & ...
離散筆記-卡塔蘭數
卡塔蘭數 Catalan Number
卡塔蘭數 (Catalan Number) 是組合數學中一個常在各種計數問題中出現的數列,數列的前幾項分別為:1, 1, 2, 5, 14, 42, 132, 429…
定義公式
C0=1,C1=1C_0 = 1, C_1 = 1C0=1,C1=1
一般項公式:
Cn=1n+1Cn2n=Cn2n−Cn−12nC_n = \frac{1}{n+1}C_{n}^{2n} = C_{n}^{2n} - C_{n-1}^{2n}Cn=n+11Cn2n=Cn2n−Cn−12n
遞迴公式:
Cn+1=∑i=0nCiCn−iC_{n+1} = \sum_{i=0}^{n}C_{i}C_{n-i}Cn+1=∑i=0nCiCn−i
or
Cn=∑i=1nCi−1Cn−iC_{n} = \sum_{i=1}^{n}C_{i-1}C_{n-i}Cn=∑i=1nCi−1Cn−i
應用
路徑問題
在一個 n * n 的格點中,從左下角 (0, 0) 到右上角 (n, n),每一步只能向右或向上,不穿越對角線的總路徑數。
n = 4 的情 ...
演算法筆記-2
樹的遍歷
重建樹
根據給定原始樹的先序遍歷 (preorder traversal) 和中序遍歷 (inorder traversal)重構原始樹。
前序遍歷的順序為 [根結點、左子樹、右子樹],而中序遍歷的順序為 [左子樹、根結點、右子樹],因此我們可以透過前序遍歷的第一個元素找到根結點,將其帶入中序遍歷,就可以找到左、右子樹,對左、右子樹遞迴進行此行為就可以構造出原始樹,
函式程式碼:
123456789101112131415161718TreeNode* BuildTree(string preord, string inord, int preord_left, int preord_right, int inord_left, int inord_right) { if (preord_left > preord_right) { return NULL; } //從前序遍歷中取得根結點 int preord_root = preord_left; //找到根結點在中序遍歷中的位置 in ...
演算法筆記-1
最大子數列
非循環陣列
給定長度為 N 的整數陣列A,從 A 所有可能的 subarray 中找出一個 subarray S,使得 S 中所有元素的總和是最大值。
Kadane’s Algorithm
循環遍歷整個陣列 A,在第 i 個元素時判斷 A[i] 和 cucursum + A[i] 的大小,判定在第 i 個元素時所能達到的最大值,之後將 cursum 與 maxsum 比較,取得子字串總和的最大值。
程式碼:
123456int maxsum = A[0], cursum = 0; for(int i = 0; i < N; i++){ cursum = max(cursum + A[i], A[i]); maxsum = max(maxsum, cursum);}retuen maxsum;
因為只要遍歷整個陣列一次,時間複雜度為 O(n)。
循環陣列
給定長度為 N 的 “循環” 整數陣列A,從 A 所有可能的 subarray 中找出一個 subarray S,使得 S 中所有元素的總和是最大值。
因為在尋找最大子數列 ...
CCO教學-Buff與物品總覽
CCO 教學系列文章:
CCO教學-新手入門
CCO教學-公會功能
CCO教學-公會功能plus (SUI 公會專屬)
CCO教學-快取與裝備
CCO教學-交易指南
CCO教學-賺取資源
CCO教學-Buff與物品總覽 ← 當前位置
本文將介紹遊戲中的 Buff 以及物品,如果需要找尋物品請善用 Ctrl + F。
Buff
需要開始前有 Buff 才有效:
突觸加速:減少掛機時間,最高可疊加至 80%。
校準增益:增加裝備校準的成功率,+n 車代表能以 0% 失敗讓裝備到 +n。
校準保護:校準失敗時破壞裝備。
RNG:開紫箱的傳奇和史詩掉率增加。
寵物領養:滿足需求的玩家可以領養寵物。
需要結束時有 Buff 才有效:
額葉:額葉皮質增強,最高80%,增加經驗獲取量。
BTC:交易漏洞,最高100%,影響從 NPC 獲得的 BTC 量。
物品總覽
物質類
AI核心 (AI):用於部署掛機機器人升級,同時也是玩家之間最主要的交易貨幣。
AI核心集群 (AICC,CC):由1000個AI核心組成,需要時可分解使用。
醫療科技零件 (MTP):可用於製作醫療物品、壓碎。 ...
CCO教學-賺取資源
CCO 教學系列文章:
CCO教學-新手入門
CCO教學-公會功能
CCO教學-公會教學plus (SUI 公會專屬)
CCO教學-快取與裝備
CCO教學-交易指南
CCO教學-賺取資源 ← 當前位置
CCO教學-Buff與物品總覽
本篇文章將會介紹幾種方式讓新手在遊戲初期獲取 AI 以及 BTC。
出售物品
短期快速賺錢的方式可以把背包內對新手收益不大的物品出售,如雜湊、箱子、公記等。
詳細的物品可以參考:CCO教學-新手入門 > 背包內值錢物品
掛 AI
看到標題可能會有一個疑問,掛 AI 應該會消耗 AI 核心阿,怎麼賺錢呢?
實際上掛 AI 其實也是一個會賺錢的行為,在掛 AI 時可以獲得快取、雜湊等物資,透過剛剛說到的出售物品方法,向其他玩家交易,可以獲得更多的 AI,甚至有可能運氣爆棚出了個紅快取,從此吃穿不愁。
壓碎
進行這兩種行為的前提是必須加入公會,才可以使用公會內的回收器。
打工
從老闆那裡拿到醫碎之後,在公會的回收器壓成科碎,並寄還給老闆,主要收益是老闆給的薪水,每壓 1k 醫碎的薪水約為 80~100 AI。
自雇
因為是自己當老闆,所以必須有一定 ...