我的高二上

目录

  • 总览
  • 分科
  • 寒假
  • 展望

总览

有几个大体上的感慨: - 其实对于普通的课业来讲,学好,或者说取得一个好成绩十分简单。上课认真听讲做笔记,下课仔细复习多练习。没有别的,高一我两个都没有做到,上课拿一个平板打游戏刷知乎,晚自习打游戏看视频,所以非常失败;高二开学我意识到了这点,我开始上课认真听讲,认真做笔记。可惜下课之后还是无法克服自己的懒惰,没有积极的复习和练习,尤其是期末考试前复习基本等于零,造就了我平时分很高但是期末分很低最后学期GPA很可惜的惨剧。 - 非常不自律,在没有什么事情的晚自习,或者周末回到家中,我的有效学习时间接近于零,这是因为我从小就没有养成一个自律的好习惯和没有学会如何延时满足。我宁可将庞大的事情拖到最后熬夜赶完,也不会先去完成之后再玩。以至于很多时候自己都会叹息:如果要是早点准备的话结果会好很多。可惜很多时候,因为我有一定的能力和天赋还有临场反应能力,导致这些临时赶出来的东西甚至会达到一个好的效果。这种反向正反馈给我养成延迟满足的好习惯造成了极大的负面效果。 - 不能沉淀,虽然我的个性签名都已经改成了沉淀,但是我依然不会沉淀。在我心中最好的状态就是除了平常的学习,要考的标化以外,有一个自己喜欢,有趣,而且有用的一个可以是爱好也好,或者是一个学习领域也好。每天干完了要干的事情,就开始全心全意的投入到这个事情上去。久而久之就沉淀了下来,就成功了。希望我在寒假和下学期能够在机器学习,kaggle社区里好好沉淀与学习。 - 其实对于GPA最大的心理内耗是并不是源于自己的绝对分数,而是源于比如:别人的科目好拿GPA拿了A+,或者是别人有很多96.5或者89.5,感觉自己一个学期每天花那么多时间努力和他们没什么差距。这些距离感反而更能使人难受。尤其是比如别人CSP平时小测期中给分高还水,自己CSA每天刻苦复习刷题背知识点,最后结果(在分数上)没什么差距,我当然知道真正掌握知识的不同,但是GPA的重要性使我想不了这么多。 - 愿这些遗憾与仇恨在以后化身沉淀的动力吧。

这次期末用我一整个学期每天的努力,换来了一个血的教训:尽管你平时复习考试再用功,再好好学,你期末不充足的复习,整个学期的努力全部白费了,尽管期末只占20%。 希望这次能饶恕我一次。

从来没这么焦虑过,自己一个学期无数晚自习,无数次熬夜,无数次对着知识点左看右看,好不容易维持的GPA,就要在一次两个小时的期末考试里烟消云散,一想到这里就万分的焦虑。 CSA:平时分99.4,这要是再上不了A+,我就一头撞死吧。 统计:平时分100,可是老师也明确表示了就靠期末区分度,千万不能白瞎了。 语文:平时分98.5,千万不能期末一拉,整个学期完蛋。 经济:平时分98.6,千万不能说学期末一松,之前百干了。 CAL3:平时分97.15,这个必须全力复习。 政治:期中太拉,期末要考95才能上A+,直接放弃。 英语:别人演戏的时候玩手机被发现了,直接扣了10分,尽管有着年级最高的bonus也无济于事,放弃。

又看了很多峰哥的视频,我觉得峰哥这种生活确实和我喜爱的很像,不过还是有一些不同的地方的。

我真正喜爱的旅行有几个特点,就是自由。

比如说,自驾游历一串串的小地方,去站在一个旁观者的角度来观察审视分析这个地方,再以一个局外人的角色去体验一些东西,想走就走,想停就停。

还有就是说走就走的旅行,不过我喜欢不规划就走,要不然是你提前就对这个地方有了解,要不然就是这个地方哪都好。然后只需要一张去的机票,最好自驾,像日本这种地方可以地铁+铁路。然后多多去探索,一定要大胆,而且尝试,之前我的旅游很多尝试的机会要不然是因为胆小,嫌贵,或者看着不好而放弃。

和峰哥去的不同点是什么呢?从日本系列就可以看出来,峰哥拍的都是贫民窟,一兰拉面,和牛什么的。我的话更喜欢,札幌夜里的居酒屋,富士山下的小民宿,仙台的本地海鲜市场这种风格的旅行。

To see the world, things dangerous to come to, to see behind the walls, to draw closer, to find each other and to feel. That is the purpose of life.

我目前的理想与梦想

不知道大家是更喜欢详细规划的旅行,还是说走就走的旅行。

每个人都有自己的理想与梦想,我的看起来甚至有一些寒碜。 我的关键字是: 自由。 至于什么是自由的,我的理解就是选择的权力。我喜欢旅游,或者说是去探索未知。 至于怎么样的旅游是我喜欢的呢? 就是一张去程的机票,有足够的金钱和能力(例如沟通能力),我不喜欢干规划好的计划,那种情况下的旅游仿佛不是旅游,而是完成计划本身。曾经我在学生组团的时候最喜欢的,就是晚上偷偷溜出酒店,在空无一人的日本夜晚的街道上游走,或是进入一家拉面馆吃面,或是走着走着忽然发现了任天堂日本本部。我喜欢这种深度游,真正的去感受,真正的去体验。此外,我还喜欢一众活动,比如滑雪,探险,远足等等

APCSA必备的 几种遍历查找的方法

Content:
  1. Binary Search
  2. Linear Search

二分法大家相比都已经很熟悉了,这个说白了就是在一个单调递增/减的数组里通过二分的方法不断将选区缩小到目标值。

记住: 必须是单调递增/减的数组

import java.util.*;
public class BinarySearch{
    static int[] a=new int[10000000];
    public static void quickSort(int[] a, int left, int right){
        int std=a[left];
        int i=left,j=right;
        if(right<=left){
            return;
        }
        else{
            while(i<j){
                while(j>i&&a[j]>std){
                    j--;
                }
                if(i<j){
                    a[i]=a[j];  
                    i++;
                }
                while(i<j&&a[i]<=std){
                    i++;
                }
                if(i<j){
                    a[j]=a[i];
                    j--;
                }
            }
            a[i]=std;
            quickSort(a,left,i-1);
            quickSort(a,i+1,right);
        }
    }
    public static int binarySearch(int[] s, int l, int target){
        int left=0,right=l-1;
        int middle;
        while(left<=right){
            middle=(right+left)/2;
            if(target>s[middle]){
                left=middle+1;
            }
            if(target<=s[middle]){
                right=middle-1;
            }
        }
        return left;
    }
    public static void main(String[] args){
        Scanner scan=new Scanner(System.in);
        System.out.println("Enter numbers of elements: ");
        int n=scan.nextInt();
        for(int i=0;i<n;i++){
            a[i]=scan.nextInt();
        }
        quickSort(a,0,n-1);
        System.out.println("Which number would you want to search?");
        int t=scan.nextInt();
        System.out.println("It is located at the "+(binarySearch(a,n,t)+1)+"'s place in the sorted array.");
    }
}
Read more »

本文来自rust社区wiki ### 什么是Rust

针对初学者和专业人员的 Rust 编程语言文档,Rust 从设计之初遍是为了更好的内存安全,现在已可作为生产力语言。

Rust 是一门系统级编程语言,开始由 Graydon Hoare 开发。后来 Mozilla 实验室接管了此项目

应用级编程语言 v/s 系统级编程语言

像 Java/C# 的应用级编程语言被用来构建直接服务于用户的应用程序。比如我们常用的 Excel, World 应用程序,网站和手机 App。

像 C/C++ 这类的属于系统级编程语言,常用来构建软件和软件平台,操作系统,游戏引擎,编译器,等等 。通常会需要一些偏底层的操作,比如大量的和硬件交互。

系统级比应用级有两个主要的问题

  • 编写内存安全的代码很困难。
  • 编写多线程代码很困难。

Rust 是什么

  • Rust 是一个系统级编程语言,被 Mozilla 员工 "Graydon Hoare" 于 2006 年 开发。他形容 Rust 是一种线程安全的支持并发的实用型的编程语言,支持函数式编程与命令式编程。

  • rust 的语法和 C++ 类似。

  • Rust 是免费开源的软件,即任何人可以免费的使用它,并且源代码是开源分享的,因此人们还可以去提高它的软件设计。

  • 在 2016 年,2017 年和 2018 年的 stack overflow 开发人员调查中,Rust 被评比为 “最受欢迎的编程语言” 之一。

  • 没有例如 calloc(动态内存分配并做初始化)或者 malloc(动态内存分配不做初始化)这样直接的内存管理模式。这意味着,内存会由 Rust 进行内部管理。

为什么选择 Rust

Rust 关注三个目标

  • 安全
  • 快速
  • 并发

该语言旨在以简单的方式开发高度可靠且快速的软件系统。Rust 可被用于从高级程序到硬件特定程序的编写。

性能

Rust 编程语言没有设计垃圾回收器( GC )。这个设计提高了程序运行的性能(译者注:相对于其他设计有 GC 的编程语言,例如 Java 和 C# )。

编译时内存的安全性

使用 Rust 构建的软件可以避免出现诸如空指针,缓存溢出和内存泄漏的内存问题。

多线程应用

Rust 所有权和内存安全的特性为没有数据竞争的并发提供了支撑。

支持 Web Assembly (WASM)

Web Assembly 有助于,在浏览器,嵌入式设备或者其他任何地方,执行计算密集型算法。它的运行速度和本机代码一样飞快。 Rust 可以被编译成 Web Assembly ,以保证代码执行的快速和可靠。

Rust 带来了什么

因为许多理由,Rust 语言成为很多人的最佳选择。

让我们来看一看,都有哪些缘由:

  • 开发者团队: 事实证明,对于开发者团队, Rust 非常实用。低水平的编程代码会包含很多 bug,需要测试人员进行覆盖测试广泛验证。然而,对于 Rust ,如果程序包含 bug,编译器将拒绝编译代码。因为编译器的并行编译工作,开发者可以专注在程序的逻辑实现而不是 bug。
  • 学术: 许多人可以学习如何使用 Rust 开发操作系统。 Rust 团队正在努力让普罗大众更容易理解系统概念,特别是对于编程新手。
  • 公司: 有大公司也有小公司使用 Rust 完成各种开发任务。这些任务包括命令行工具,Web 服务,DevOps 工具,嵌入式设备,音频和视频的分析和转码,加密货币,生物信息学,搜索引擎,物联网应用,机器学习,甚至是火狐浏览器的重要组成部分。
  • 开源开发者: Rust 是一种开源的编程语言,这意味着源代码可以供人们任意使用。因此,人们还可以利用开源的源代码参与进提升 Rust 设计的工作。

———————————————— 原文作者:Summer 转自链接:https://learnku.com/rust/wikis/36705 版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接。

怀念札幌的冬 w0

今天回家之后先是浏览了一下BoBo的视频,然后又去看了一下杨光的。不禁感叹,都是知识改变命运的例子啊。一个是小镇做题浙大物院第一,Berkely 物理PHD转码,AirBnb成功。一个是清华建筑系,打拼到财务自由。

Read more »

Mr. Puneet的理解和认知非常好。他说,IVY League的学校都太古板,和老旧了。终身教授制度使得这些学校的CS教育还是老式的,而且藤校学生一般更喜欢华尔街,金融。 只有像威斯康辛麦迪逊,卡内基梅隆,华盛顿大学西雅图,等等,是adopted的CS教育,why?因为他们和industry有联系。斯坦福虽然好,但是他们招学生时不仅仅看你的数学或者计算机能力,而是看你的综合能力,尽管你CS很强,但是你没有leadership,也不会招你。

比起竞赛,更重要的是什么呢? 比如你暑假在某个科技公司实习,某个项目的某个部分是你写的。或者说你在github上有一个项目,你干了什么什么。