0%

Lec4.

  • Decomposition(分解)
  • Abstraction(抽象)

Function

  • block up into modules
  • suppress detail
  • create “new primitive”(原语)

抽象和规格化在模块化和构造函数时的重要性

阅读全文 »

计算机科学及编程导论 Lec1.

什么是计算思维(computation)

知识:

  • 陈述性知识(declarative):描述事实 Ex: 若sqrt(x)=y则y^2=x
  • 程序性知识(imperative):对推论过程的描述 Ex:GCD求法
    阅读全文 »

题目及理解

题目连接557. Reverse Words in a String III

Given a string, you need to reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order.
Example 1:

1
2
Input: "Let's take LeetCode contest"
Output: "s'teL ekat edoCteeL tsetnoc"

Note: In the string, each word is separated by single space and there will not be any extra space in the string.

阅读全文 »

中间还有自动化测试和自定义CSS的部分被我先忽略了,最后一块是讲自定义admin后台的内容的.
代码同步在github上mysite-part5

开始

在一开始的时候,我们把Question引入了admin模块,如果我们需要对字段进行更改的话,可以在admin.py文件中自己来定义,比如字段的顺序:

1
2
3
class QuestionAdmin(admin.ModelAdmin):    
fields = ['pub_date', 'question_text']
admin.site.register(Question, QuestionAdmin)

这样就可以交换2个字段的位置了~

阅读全文 »

接着第三部分的内容继续app的开发.
代码同步在github上mysite-part4

写一个简单的表单

template/polls/detail.html来添加一个form表单:

1
2
3
4
5
6
7
8
9
10
<h1>{'{ question.question_text }' }</h1>
{ % if error_message % }<p><strong>{'{ error_message }' }</strong></p>{ % endif % }
<form action="{ % url 'polls:vote' question.id % }" method="post">
{ % csrf_token % }
{ % for choice in question.choice_set.all % }
<input type="radio" name="choice" id="choice{'{ forloop.counter }' }" value="{'{ choice.id }' }" />
<label for="choice{'{ forloop.counter }' }">{'{ choice.choice_text }' }</label><br />
{ % endfor % }
<input type="submit" value="Vote" />
</form>

阅读全文 »

题目及理解

Given a List of words, return the words that can be typed using letters of alphabet on only one row’s of American keyboard like the image below.

Example 1:

1
2
Input: ["Hello", "Alaska", "Dad", "Peace"]
Output: ["Alaska", "Dad"]

Note:

  • You may use one character in the keyboard more than once.
  • You may assume the input string will only contain letters of alphabet.
    阅读全文 »

接着上一部分,在这个部分主要是添加网页相关的一些内容.
对应的源码也放在了github仓库中mysite-part3

开始

概述

在我们的polls的应用中,我们需要以下的四个视图:

  • Question的index页面—显示最近的问题
  • Question的detail页面—显示一个问题的详细信息,可以投票
  • Question的results页面—显示一个问题的结果
  • 投票功能—能够处理投票信息
    阅读全文 »

题目及理解

题目链接:476. Number Complement

Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.

Note:

  1. The given integer is guaranteed to fit within the range of a 32-bit signed integer.
  2. You could assume no leading zero bit in the integer’s binary representation.

Example 1:

1
2
3
Input: 5
Output: 2
Explanation: The binary representation of 5 is 101 (no leading zero bits), and its complement is 010. So you need to output 2.

Example 2:

1
2
3
Input: 1
Output: 0
Explanation: The binary representation of 1 is 1 (no leading zero bits), and its complement is 0. So you need to output 0.

阅读全文 »

简述

这一系列的博客是基于Django官方的Documentation—Writing your first Django app而来的,主要是对文档的翻译和自己的实际操作,使用的IDE是Pycharm.
对应项目每个part的代码可以在我的github仓库下载django官方案例的实现

开始

从一个例子来学习Django的简单内容,在这个教程中,我们将创建一个基本的投票应用.
包含以下的两部分:

  • 一个公开的网站能够进行投票和浏览
  • 一个管理员网页可以用来添加,改变和删除投票信息.
    阅读全文 »