算法 乐趣 程序
算法 对于我来说就是一个大压力。讨厌又是算法.有种不适的感觉。
但拜读过《算法的乐趣》一书后对算法学习上有种莫明其妙的感觉。
相信在用Mac的程序猿。差点儿相同都知道 Homebrew。
Homebrew 的开发人员是 Max Howell。
Max Howell就在几天前,在推特发帖:
Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard so fuck off.
谷歌:尽管我们 90% project师都在用你写的软件(Homebrew),但你不能在白板上反转二叉树 ,所以滚蛋。
Max Howell大神到google去面试,相信你们都知道他失败了。他输在算法上。这是多么可惜呀。 需然google语气不是非常好,可是对于算法是非常重要的,事实上本女子算法也不是非常好但看了《算法的乐趣》一书后。会对算法有非常大提升的,曾经有一个程序,执行输出结果非常慢,进行八叉树量化提升速率有非常大改变.(执行速度 稳定执行是程序的重要一环)
所以说不能忽视算法的重要性,各位先生&女士们
- 算法非常重要
- 算法和数据结构
面试时会有算法
在微博上看到的:“玩算法的码农。打拼靠蓝条。像是法师。数学就等于蓝条最大值,数学差。魔法值不高,非常快就到瓶颈了。外语影响回蓝速度。经验和智力加急速和穿透的。不玩算法的码农,像是战士,打拼靠血条,体质加生命,精神加生命回复。经验和敏捷加急速和破甲
这是以游戏形式为例子来说明算法的重要性么。
另一位达人Mon*****r;有一些数据结构基础知识就有二叉树什么的,还有经典报童卖报数学模型(数学差我是看不懂)
算法无处不在,以下出道题目给小伙伴们
题目:
幂运算是常见的数学运算之中的一个,其原理是用同一个数相乘多次,可是有的时候当幂指数特别大的时候。这种运算就太浪费时间。请大家学会在幂中加特技。让幂运算的效率提高到能够接受的程度。
输入:
第一个行一个整数T,表示有T组数据
每组数据,输入x,y 求x的y次幂 (2≤ x ,y≤10^9)
输出:
每组数据输出一个整数,表示幂运算对1000000007取模后的结果
例子输入:
2
2 4
2 100000000
例子输出:
16
494499948
答案:
1. bbs.csdn.net/topics/391006597
2.
/*
* b.cpp
* 高速幂
* Created on: 2015年7月10日
* Author: sinbas(¨ω¨)
*
*/
#include <iostream>
#include <cstdio>
using namespace std;
long long quickpow(long long m, long long n, long long k) {
long long b = 1;
while (n > 0) {
if (n & 1){
b = (b * m) % k;
}
n = n >> 1;
m = (m * m) % k;
}
return b;
}
int main() {
int t;
scanf("%d", &t);
long long aa = 1000000007LL;
while (t--) {
long long a, b;
scanf("%I64d%I64d", &a, &b);
printf("%I64d\n", quickpow(a, b, aa));
}
return 0;
}
以上所述都是各位前辈们的经验之谈,还请各位慢慢品尝。