Okay, let's do the backwards method (it's a lot easier to see). So, find Fx(x) (P[X<=x]). This is done by finding probability that x is less than or equal to x. This consists of two regions: 0.5<x<1, for which the probability is x-0.5 (the amount of x in the tall region) times height one, plus the small square region, and this total divided by the total shaded area (0.75); the second region is 0<x<0.5, for which probability X<=x is just x times height of short shaded region (0.5) divided by total shaded area (0.75). Again:

Fx(x) = P[X<=x] = ( (x-0.5)*1 + 0.25)/0.75 ; 0.5<x<1

= (x*0.5)/0.75 ; 0<x<0.5

take the derivative of this to get fx(x), and you get

fx(x) = 1/0.75 ; 0.5<x<1

= 0.5/0.75;0<x<0.5

...Conceptually much easier.