数据结构与算法(一):准备篇

简介: 数据结构与算法(一):准备篇

一、学习的背景



  • 1.1、目前很多的IT同行在去面试的时候都会被问到会不会数据结构算法的问题,个人觉得很正常,这毕竟是内功。


  • 数据结构 是相互之间存在一种或者多种特定关系的数据元素的集合。它也是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。
  • 数据 是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的特殊符号集合。数据不仅仅包括整型、实型等数值类型,还包括字符以及声音、图像、视频等非数值类型。
  • 不同数据元素之间不是独立的,而是存在特定的关系,我们将这些关系称为 结构


  • 1.2、学习算法与数据结构的好处:写出性能更高的程序、理解底层更够容易,出去面试更有底气......
  • 1.3、语言的选择(JAVA)
    C:非面向对象,写法复杂,大量内存管理代码
    C++:写法复杂,大量的内存管理代码
    Objective-C、Swift:需要Mac系统
    JavaScript、Python:依赖于脚本解释器,同一个逻辑使用不同的写法会影响代码的性能,影响算法性能测评
    Java:语法丰富严禁,更多的注意力可以放到业务逻辑上,建议至少使用 Java8(JDK>=1.8)


  • 1.4、整体大纲


image.png


二、开发环境



  • 2.1、eclipse(或者 IntelliJ IDEA),优点如下


image.png




  • 明亮、简洁、舒服
  • 多个项目可以在同一个窗口显示



image.png

image.png


  • 在学习的过程中不会使用到后台开发的框架
  • 支持Mac、Windows


  • 2.2、JDK,版本要求 >= 1.8,根据不同的系统自己选择,我的是Mac,选择的是下面的


image.png

三、配置环境变量



  • 3.1、eclipse 创建项目的设置
  • 打开 Console:Window->Show View->Console
  • 底部再保留一个 Problems


image.png


右上角保留一个 Outline


image.png

  • 3.2、字体的设置
    command + ,(Eclipse->Preferences):搜索 font->Colors and Fonts->Basic->Text Font->Edit,字体大小选择适合自己就好
  • 3.3、创建一个项目:File->New->Java Project,项目名字 :01-Test
  • 在 项目 里面创建一个类:文件名:Main,包名:com.www(包名遵循 域名反过来写)


image.png


  • Java运行需要一个入口,也就是 main方法,如下


package com.www;
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello world!");  
    }
}


  • 3.4、行号的添加:选中 Show Line Numbers


image.png

  • 3.5、常用快捷键


  • 代码提示
    Mac:Option +/
    Windows:Alt +/
  • 自动导入所需要的类
    Mac:Command + Shift + O
    Windows:Ctrl  + Shift + O
  • 错误修复
    Mac:Command + 1
    Windows:Ctrl + 1
  • 快速生成代码
    Mac:Option + Command + S
    Windows:Alt + Shift + S


  • 3.6、代码增强提示


image.png

将需要代码提示的字符输入到下面的文本框,比如:.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789,敲什么东西都自动有提示


image.png

3.7、修改工作空间默认编码:很多平台的编码都是 UTF-8,所以我们要修改为UTF-8


image.png

3.8、导入已经存在的项目


image.png

image.png

目录
相关文章
数据结构与算法介绍
数据结构与算法几乎存在于程序开发中的所有地方!!! 例如:插入排序,快速排序,堆排序,冒泡排序等...
|
存储 算法
数据结构与算法总纲
数据结构与算法总纲
203 0
数据结构与算法总纲
|
存储 机器学习/深度学习 人工智能
数据结构与算法《褚论》
数据结构与算法《褚论》
154 0
|
存储 人工智能 算法
数据结构与算法(下)
输入两个整数序列。第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。
213 0
|
数据采集 存储 算法
数据结构与算法(上)
数据结构和算法有什么关系?
117 0