y con css? esto serviría solo si necesitas esas clases "first" y "last" para agregarle algún estilo.
<style>
ul{width: 630px;padding: 0;overflow: hidden;}
li{width: 200px;height: 50px;background-color: gray;list-style: none;margin: 0;float:left;margin-bottom: 10px;margin-right: 10px;}
li:nth-child(3n-2){background-color: red;} /* esta regla toma el primer li de cada fila, secuencia 3n-2 (1,4,7,10) */
li:nth-child(3n){background-color: red;} /* esta regla toma el último li de cada fila, secuencia 3n (3,6,9,12) */
li:first-child{background-color: orange;} /* esta regla toma el primer li */
li:last-child{background-color: cyan;} /* esta regla toma el último li */
</style>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
<li>11</li>
</ul>
http://jsbin.com/lupidiweze/1/