cws/cw04.tex
changeset 257 ba4d976ca88d
parent 253 ec7a12806c3f
child 275 eb1b4ad23941
equal deleted inserted replaced
256:512292bb5e93 257:ba4d976ca88d
       
     1 % !TEX program = xelatex
     1 \documentclass{article}
     2 \documentclass{article}
     2 \usepackage{../style}
     3 \usepackage{../style}
     3 \usepackage{../langs}
     4 \usepackage{../langs}
     4 \usepackage{disclaimer}
     5 \usepackage{disclaimer}
     5 \usepackage{tikz}
     6 \usepackage{tikz}
   101 \cwNINEa{} at 11pm. In the first part, you are asked to implement a
   102 \cwNINEa{} at 11pm. In the first part, you are asked to implement a
   102 regular expression matcher based on derivatives of regular
   103 regular expression matcher based on derivatives of regular
   103 expressions. The background is that ``out-of-the-box'' regular
   104 expressions. The background is that ``out-of-the-box'' regular
   104 expression matching in mainstream languages like Java, JavaScript and
   105 expression matching in mainstream languages like Java, JavaScript and
   105 Python can sometimes be excruciatingly slow. You are supposed to implement
   106 Python can sometimes be excruciatingly slow. You are supposed to implement
   106 an regular expression macther that is much, much faster. The advanced part is
   107 an regular expression matcher that is much, much faster. The advanced part is
   107 about the shunting yard algorithm that transforms the usual infix
   108 about the shunting yard algorithm that transforms the usual infix
   108 notation of arithmetic expressions into the postfix notation, which is
   109 notation of arithmetic expressions into the postfix notation, which is
   109 for example used in compilers.\bigskip
   110 for example used in compilers.\bigskip
   110 
   111 
   111 \IMPORTANT{}
   112 \IMPORTANT{}
   112 
   113 
   113 \noindent
   114 \noindent
   114 Also note that the running time of each part will be restricted to a
   115 Also note that the running time of each part will be restricted to a
   115 maximum of 30 seconds on my laptop.
   116 maximum of 30 seconds on my laptop.  
   116 
   117 
   117 \DISCLAIMER{}
   118 \DISCLAIMER{}
   118 
   119 
   119 \subsection*{Reference Implementation}
   120 \subsection*{Reference Implementation}
   120 
   121